KDevelop4/Підручник/Сеанси і проекти
Сеанси і проекти: основи KDevelop
У цьому розділі ми оглянемо деякі питання щодо термінології, використаної у KDevelop, та структури роботи у середовищі. Зокрема, ми поговоримо про поняття сеанси і проекти та пояснимо, як налаштовувати проекти, над якими ви маєте намір працювати у KDevelop.
Термінологія
У KDevelop використано поняття сеанси та проекти. У сеансі містяться всі проекти, чимось пов’язані між собою. У наведених нижче прикладах ми припускаємо, що ви є розробником одночасно бібліотеки та програми, яка використовує цю бібліотеку. Прикладом подібної схеми розробки є бібліотеки KDE (бібліотека) і саме середовище KDevelop (програма). Інший приклад: ви є розробником ядра Linux і одночасно працюєте над драйвером пристрою для Linux, який ще не включено до ядра.
У останньому прикладі у нас був би сеанс KDevelop з двома проектами: ядром Linux і драйвером пристрою. Варто згрупувати ці проекти у одному сеансі (замість двох сеансів для кожного окремого проекту), оскільки корисно бачити функції та структури даних ядра у KDevelop, коли ви пишете код драйвера: ви, наприклад, зможете скористатися автодоповненням назв функцій та змінних ядра або переглянути документацію з функції ядра під час розробки драйвера пристрою.
Припустімо тепер, що ви є одним з розробників KDE. Тоді у вас буде інший сеанс, який міститиме проект KDE. Звичайно, ви можете створити єдиний сеанс для всіх ваших проектів, але для цього немає ніяких причин: для вашої роботи у KDE вам не потрібен доступ до функцій ядра або драйверів пристроїв, вам не потрібне автоматичне доповнення назв класів KDE під час роботи над ядром Linux. Нарешті, збирання бібліотек KDE не пов’язане зі збиранням ядра Linux (з іншого боку збирання драйвера пристрою часто пов’язане зі збиранням ядра Linux, якщо було внесено зміни до файлів заголовків ядра).
Нарешті, ще одним з випадків використання сеансів є одночасна робота над експериментальною версією проекту та його стабільною версією: у цьому випадку небажаним буде конфлікт між класами, які належать різним гілкам проекту у KDevelop. Отже, варто створити два сеанси з однаковим набором проектів, але різними каталогами зберігання (відповідно до гілок розробки).
Налаштування сеансу та імпортування вже створеного проекту
Зупинимося на прикладі з ядром Linux і драйвером пристрою. Вам слід буде замінити назви бібліотек та проектів вашими назвами бібліотек і проектів, щоб реалізувати наші приклади у вашій системі. Щоб створити сеанс, який міститиме два наших проекти, скористаємося пунктом меню
Далі нам потрібно заповнити сеанс проектами, які у нашому прикладі будуть вже створеними раніше проектами (створення проектів «з нуля» обговорено у іншому розділі цього підручника). Виконати заповнення можна у два способи. Один з них можна застосувати до проектів, дані яких вже зберігаються на жорсткому диску вашого комп’ютера. Іншим можна скористатися для отримання даних проекту з сервера.
1. Імпортування даних проекту з сервера системи керування версіями
Let's first assume that the project we want to set up -- the Linux kernel -- resides in some version control system on a server, but that you haven't checked it out to your local hard drive yet. In this case, go to the
menu to create the Linux kernel as a project inside the current session and then follow these steps:- Скористайтеся пунктом меню для імпортування даних проекту.
- Середовище запропонує вам розпочати новий проект у межах поточного сеансу, залежно від походження коду: ви можете просто вказати KDevelop вже створений каталог з кодом, ви також можете наказати KDevelop отримати код зі сховища коду. Припускаємо, що у вас ще немає копії коду зі сховища системи керування версіями. Вам слід виконати такі дії:
- У діалоговому вікні під написом виберіть , або один з інших варіантів.
- Виберіть робочий каталог призначення, до якого слід звантажити код проекту.
- Виберіть адресу розташування сховища з кодом проекту.
- Натисніть кнопку
du -sk /шлях/до/проекту/KDevelop
(буде показано об’єм отриманих даних). . Отримання кодів може бути доволі тривалою справою. Тривалість виконання цієї дії залежить від ширини каналу вашого з’єднання з інтернетом та розміру проекту. На жаль, у KDevelop 4.2.x панель поступу не є надто інформативною, але ви можете спостерігати за поступом з командного рядка за допомогою команди
- Середовище попросить вас вибрати файл проекту KDevelop у каталозі з кодом. Оскільки такого файла, ймовірно, у вас ще немає, просто натисніть кнопку .
- Ще раз натисніть кнопку .
- KDevelop попросить вас визначитися зі способом керування проектом. Якщо у проекті використано стандартні файли make Unix, виберіть нетиповий спосіб керуванян проектом за допомогою файла makefile.
- KDevelop виконає обробку даних проекту. Знову ж таки, ця дія може бути доволі тривалою, оскільки доведеться виконати обробку всіх файлів, створити покажчик класів тощо. У нижній правій частині основного вікна буде показано панель поступу з даними щодо поступу виконання обробки. (Якщо у вашого процесора декілька ядер, ви можете пришвидшити процедуру: скористайтеся пунктом меню , виберіть пункт на панелі ліворуч і збільшіть кількість потоків обробки у полі праворуч.)
Option 2: Importing a project that is already on your hard drive
Alternatively, if the project you want to work with already exists on your hard drive (for example, because you have downloaded it as a tar file from an FTP server, because you already checked out a version of the project from a version control system, or because it is your own project that exists only on your own hard drive), then use
and in the dialog box choose the in which your project resides.Налаштування програми як другого проекту
Наступним кроком буде, очевидно, налаштування інших проектів у тому самому сеансі. У нашому раніше наведеному прикладі другим проектом буде драйвер ядра. Додати новий проект можна знову виконавши вказані вище кроки.
Якщо ви розробляєте одночасно декілька програм або бібліотек, просто повторіть вказані вище кроки для додавання цих проектів до вашого сеансу.
Створення проектів «з нуля»
Звичайно ж, ви можете скористатися новим проектом. Створити новий проект можна за допомогою пункту меню
. Подробиці щодо створення проектів викладено у інших розділах цього підручника.