KDevelop4/Підручник/Сеанси і проекти
Сеанси і проекти: основи KDevelop
У цьому розділі ми оглянемо деякі питання щодо термінології, використаної у KDevelop, та структури роботи у середовищі. Зокрема, ми поговоримо про поняття сеанси і проекти та пояснимо, як налаштовувати проекти, над якими ви маєте намір працювати у KDevelop.
Термінологія
У KDevelop використано поняття сеанси та проекти. У сеансі містяться всі проекти, чимось пов’язані між собою. У наведених нижче прикладах ми припускаємо, що ви є розробником одночасно бібліотеки та програми, яка використовує цю бібліотеку. Прикладом подібної схеми розробки є бібліотеки KDE (бібліотека) і саме середовище KDevelop (програма). Інший приклад: ви є розробником ядра Linux і одночасно працюєте над драйвером пристрою для Linux, який ще не включено до ядра.
У останньому прикладі у нас був би сеанс KDevelop з двома проектами: ядром Linux і драйвером пристрою. Варто згрупувати ці проекти у одному сеансі (замість двох сеансів для кожного окремого проекту), оскільки корисно бачити функції та структури даних ядра у KDevelop, коли ви пишете код драйвера: ви, наприклад, зможете скористатися автодоповненням назв функцій та змінних ядра або переглянути документацію з функції ядра під час розробки драйвера пристрою.
Припустімо тепер, що ви є одним з розробників KDE. Тоді у вас буде інший сеанс, який міститиме проект KDE. Звичайно, ви можете створити єдиний сеанс для всіх ваших проектів, але для цього немає ніяких причин: для вашої роботи у KDE вам не потрібен доступ до функцій ядра або драйверів пристроїв, вам не потрібне автоматичне доповнення назв класів KDE під час роботи над ядром Linux. Нарешті, збирання бібліотек KDE не пов’язане зі збиранням ядра Linux (з іншого боку збирання драйвера пристрою часто пов’язане зі збиранням ядра Linux, якщо було внесено зміни до файлів заголовків ядра).
Нарешті, ще одним з випадків використання сеансів є одночасна робота над експериментальною версією проекту та його стабільною версією: у цьому випадку небажаним буде конфлікт між класами, які належать різним гілкам проекту у KDevelop. Отже, варто створити два сеанси з однаковим набором проектів, але різними каталогами зберігання (відповідно до гілок розробки).
Налаштування сеансу та імпортування вже створеного проекту
Зупинимося на прикладі з ядром Linux і драйвером пристрою. Вам слід буде замінити назви бібліотек та проектів вашими назвами бібліотек і проектів, щоб реалізувати наші приклади у вашій системі. Щоб створити сеанс, який міститиме два наших проекти, скористаємося пунктом меню
Далі нам потрібно заповнити сеанс проектами, які у нашому прикладі будуть вже створеними раніше проектами (створення проектів «з нуля» обговорено у іншому розділі цього підручника). Виконати заповнення можна у два способи. Один з них можна застосувати до проектів, дані яких вже зберігаються на жорсткому диску вашого комп’ютера. Іншим можна скористатися для отримання даних проекту з сервера.
1. Імпортування даних проекту з сервера системи керування версіями
Припустімо, що дані потрібного нам проекту, — скажімо, ядра Linux, — зберігаються у якійсь системі керування версіями, але у вас ще немає копії сховища коду на жорсткому диску комп’ютера. У такому разі, відкрийте меню
для створення проекту ядра Linux у межах поточного сеансу і виконайте такі дії:- Скористайтеся пунктом меню для імпортування даних проекту.
- Середовище запропонує вам розпочати новий проект у межах поточного сеансу, залежно від походження коду: ви можете просто вказати KDevelop вже створений каталог з кодом, ви також можете наказати KDevelop отримати код зі сховища коду. Припускаємо, що у вас ще немає копії коду зі сховища системи керування версіями.
Вам слід виконати такі дії:
- У діалоговому вікні під написом виберіть , або один з інших варіантів.
- Виберіть робочий каталог призначення, до якого слід звантажити код проекту.
- Виберіть адресу розташування сховища з кодом проекту.
- Натисніть кнопку
du -sk /шлях/до/проекту/KDevelop
(буде показано об’єм отриманих даних). . Отримання кодів може бути доволі тривалою справою. Тривалість виконання цієї дії залежить від ширини каналу вашого з’єднання з інтернетом та розміру проекту. На жаль, у KDevelop 4.2.x панель поступу не є надто інформативною, але ви можете спостерігати за поступом з командного рядка за допомогою команди
- Середовище попросить вас вибрати файл проекту KDevelop у каталозі з кодом. Оскільки такого файла, ймовірно, у вас ще немає, просто натисніть кнопку .
- Ще раз натисніть кнопку .
- KDevelop попросить вас визначитися зі способом керування проектом. Якщо у проекті використано стандартні файли make Unix, виберіть нетиповий спосіб керування проектом за допомогою файла makefile.
- KDevelop виконає обробку даних проекту. Знову ж таки, ця дія може бути доволі тривалою, оскільки доведеться виконати обробку всіх файлів, створити покажчик класів тощо. У нижній правій частині основного вікна буде показано панель поступу з даними щодо поступу виконання обробки. (Якщо у вашого процесора декілька ядер, ви можете пришвидшити процедуру: скористайтеся пунктом меню , виберіть пункт на панелі ліворуч і збільшіть кількість потоків обробки у полі праворуч.)
2. Імпортування проекту, дані якого вже зберігаються на жорсткому диску вашого комп’ютера
Якщо ж проєкт, над яким ви бажаєте працювати, вже зберігається на жорсткому диску вашого комп’ютера (наприклад, ви отримали дані проєкту у архіві з сервера FTP, скопіювали зі сховища керування версіями проєкту або ви працюєте над власним проєктом, дані якого зберігаються лише на жорсткому диску вашого комп’ютера), скористайтеся пунктом меню
і у діалоговому вікні вкажіть каталог, у якому зберігаються дані вашого проєкту. Якщо у проєкті вже є makefile (або CMakeList.txt), перейдіть до каталогу, у якому зберігається проєкт і виберіть makefile; програма покаже вам наступне діалогове вікно, за допомогою якого ви зможете змінити назву проєкту (з типової, яку буде визначено на основі назви теки, у якій зберігається makefile). Для використання makefile слід вибрати системою збирання «Нетиповий проєкт Makefile». Якщо маємо справу зі makefile із декількома цілями, слід вибрати пункт меню , перейти на сторінку «Загальне» і натиснути кнопку +Додати новий, вибрати «Компільований виконуваний файл», позначити пункт «Виконуваний файл» і ввести повну назву виконуваного файла до відповідного поля.Налаштування програми як другого проекту
Наступним кроком буде, очевидно, налаштування інших проектів у тому самому сеансі. У нашому раніше наведеному прикладі другим проектом буде драйвер ядра. Додати новий проект можна знову виконавши вказані вище кроки.
Якщо ви розробляєте одночасно декілька програм або бібліотек, просто повторіть вказані вище кроки для додавання цих проектів до вашого сеансу.
Створення проектів «з нуля»
Звичайно ж, ви можете скористатися новим проектом. Створити новий проект можна за допомогою пункту меню
, який відкриває діалогове вікно вибору шаблона. Деякі з шаблонів встановлюються з основним пакунком KDevelop, інші ж можна встановити разом з програмою KAppTemplate. Виберіть у діалоговому вікні тип проекту і мову програмування, вкажіть назву і розташування вашого проекту і натисніть кнопку .За допомогою другої сторінки діалогового вікна ви можете налаштувати систему керування версіями. Виберіть бажану для вас систему і заповніть відповідні поля параметрів. Якщо ви не хочете користуватися системою керування версіями або хочете визначити її параметри пізніше, виберіть пункт
. Щойно визначення відповідних параметрів буде завершено, можете натиснути кнопку .Тепер ваш проект створено, ви можете спробувати зібрати і встановити його. У деяких шаблонах передбачено коментарі у коді або навіть окремий файл README. Рекомендуємо ознайомитися зі вмістом такого файла до того, як буде розпочато подальшу розробку. Після ознайомлення з усіма довідковими матеріалами можна розпочати роботу над проектом і додавання потрібних вам можливостей.