Bernd
Pol
Anne-Marie
Mahfouf

# Установка &kdevelop;

В этой главе описаны все этапы сборки и установки &kdevelop;:

- Раздел Как получить &kdevelop; содержит информацию по загрузке последней версии &kdevelop; в виде исходного кода из репозитория SVN.

- Раздел Требования &kdevelop; содержит список программ и библиотек, необходимых для сборки &kdevelop;.

- Раздел Сборка и установка &kdevelop; проведёт вас через все этапы сборки и установки &kdevelop;.

- Раздел Как получить документацию по &API; рассказывает что такое API и как вам получить удобный инструмент для навигации по исходникам &kdevelop;.

## Как получить &kdevelop;

&kdevelop; доступен в собранном виде во многих дистрибутивах &Linux;, таких, как SuSE, RedHat и других, чаще всего в виде пакета RPM, для упрощения процесса установки. Для установки из собранного пакета обратитесь к документации по вашему дистрибутиву.

Также вы можете загрузить исходный код, собрать и установить &kdevelop; самостоятельно. Исходный код среды разработки доступен на http://www.kdevelop.org и ftp-сервер &kde;.

### Получение ежедневных снимков &kdevelop; из SVN

Если вы хотите быть в курсе последних разработок, то доступен анонимный снимок репозитория SVN.

Имя модуля kdevelop в репозитории `svn co svn://anonsvn.kde.org/home/kde/branches/KDE/3.5/kdevelop`.

#### Скачивание рабочей копии

Для получения версии &kdevelop;, загрузите его с анонимного репозитория SVN. Эта операция называется скачивание рабочей копии (checkout).

Далее подразумевается, что исходный код &kdevelop; расположен в каталоге `~/kde3src`.

- # Создаём конечный каталог, если необходимо:
- ~> `mkdir kde3src`
- ~> `cd kde3src`
- ~/kde3src> `svn co svn://anonsvn.kde.org/home/kde/branches/KDE/3.5/kdevelop`
- ~/kde3src> `cd kdevelop`

После полной загрузки рабочей копии &kdevelop; вы можете постоянно иметь самую последнюю версию путём обновления, что описано в следующем разделе.

Пожалуйста, не загружайте каждый раз все файлы заново! Используйте команду svn update.

Теперь вы можете собрать &kdevelop;, как показано в разделе Сборка и установка &kdevelop;.

#### Поддержка локальной рабочей копии в актуальном состоянии

После загрузки (и сборки) &kdevelop; из SVN можно поддерживать вашу рабочую копию исходного кода в актуальном состоянии, чтобы получать все исправления. Для этого (опять же таки предполагается, что копия исходного кода &kdevelop; расположена в каталоге `kde3src`).

Обратите внимание на использование команды `up` (update, обновить) вместо `co` (checkout).

- ~> `cd kde3src`
- ~/kde3src> `cd kdevelop`
- ~/kde3src> `svn up`

Следите за сообщениями svn в процессе обновления, так как от этого зависят конкретные шаги сборки.

После обновления &kdevelop;, приложение нужно собрать как описано в главе Нюансы сборки из SVN.

## Требования

Для успешной сборки и последующего использования &kdevelop;, необходимо установить следующие программы и библиотеки. Обычно они поставляются с дистрибутивами, а значит установить их можно просто.

### Требуется:

- gcc/g++ ≥ 2.95.3 (или аналог)

  Официальный сайт: gcc.gnu.org

- &GNU; make (или аналог)

  Официальный сайт: www.gnu.org/software/make

- &perl; 5.004 (или выше)

  Официальный сайт: www.perl.com

- autoconf ≥ 2.52 (или выше)

  Официальный сайт: www.gnu.org/software/autoconf

- automake ≥ 1.6 (или выше)

  Официальный сайт: www.gnu.org/software/automake

- flex 2.5.4 (или выше)

  Официальный сайт: www.gnu.org/software/flex

- &Qt; ≥ 3.0.3 (или выше)

  Официальный сайт: www.trolltech.com/products/qt

- KDE ≥ 3.0.2 (или выше)

  Официальный сайт: www.kde.org

### Необязательно:

- Средство навигации по исходному коду ctags, с http://ctags.sourceforge.net, позволяющее быстрое перейти к объявлению или определению несколькими щелчками мыши на имени переменной в редакторе.

- dot, генератор изображений, с http:/www.graphviz.org. Он нужен для &doxygen;, чтобы наглядно показать иерархию классов.

- Средство документирования &doxygen;, с http://www.doxygen.org, с помощью которого вы сможете сгенерировать лаконичную и гибкую документацию API вашего проекта.

- valgrind с http://developer.kde.org/~sewardj/ поможет найти утечки памяти в вашем приложении.

- svn с http://subversion.tigris.org/ если вы хотите использовать систему управления версиями SVN.

- Любой другой компилятор и/или инструмент, если вы разрабатываете программное обеспечение на языке или платформе, отличных от C++/&kde;.

1. Вы можете обойти требования &autoconf; ≥ 2.52 и &automake; ≥ 1.6. Просто удалите подкаталог `admin` в установочном каталоге &kdevelop; и введите

   - (каталог-kdevelop)> `ln -s $KDEDIR/share/apps/kdelibs/admin admin`

   в консоли. При этом &kdevelop; будет использовать стандартные параметры в каталоге &kde; `admin` .

2. Убедитесь, что вы не смешиваете разные версии &Qt;. Всегда собирайте &kdevelop; с той версией &Qt;, с которой были собраны библиотеки &kde;. Иначе вы можете получить очень странное поведение программы.

## Сборка и установка &kdevelop;

После удовлетворения всех требований, вы можете приступить к сборки и установке &kdevelop;. В приложении описаны необходимые для этого действия.

- Раздел Подготовительные шаги содержит инструкции по установке окружения.

- Раздел Сборка &kdevelop; расскажет как получить исходный код &kdevelop; из svn, подготовить его, скомпилировать и установить.

- Раздел Примечания по ключам `configure` покажет как собрать &kdevelop; не в каталог &kde; по умолчанию.

### Подготовительные шаги

Перед началом сборки убедитесь, что все библиотеки и инструменты доступны сборочной системе make. Для этого нужно правильно выставить переменные окружения. Шаги, которые следует выполнить при этом, зависят от используемой оболочки («shell»).

Чтобы не вводить все необходимые операторы по определению переменных окружения каждый раз, вы можете записать их в файл `.bashrc` или `.cshrc`. Таким образом, переменные будут иметь нужное значение каждый раз при входе в систему.

#### Настройка окружения в оболочке bash

Если вы используете bash, добавьте в его файл конфигурации такие строки:

- `export KDEDIR=`(путь к KDE)
- `export QTDIR=`(путь к библиотеке Qt)
- `export LD_LIBRARY_PATH=$QTDIR/lib:$KDEDIR/lib:$LD_LIBRARY_PATH`
- `export LIBRARY_PATH=$QTDIR/lib:$KDEDIR/lib:$LIBRARY_PATH`
- `export PATH=$QTDIR/bin:$KDEDIR/bin:$PATH`

#### Настройка окружения для оболочки tcsh

Если вы используете tcsh, добавьте в его файл конфигурации такие строки:

- `setenv KDEDIR` (путь к KDE)
- `setenv QTDIR` (путь к библиотеке Qt)
- `setenv LD_LIBRARY_PATH=$QTDIR/lib:$KDEDIR/lib:$LD_LIBRARY_PATH`
- `setenv LIBRARY_PATH $QTDIR/lib:$KDEDIR/lib:$LIBRARY_PATH`
- `setenv PATH $QTDIR/bin:$KDEDIR/bin:$PATH`

### Сборка &kdevelop;

Далее подразумевается, что исходный код &kdevelop; расположен в каталоге `~/kde3src/kdevelop`.

#### Особенности сборки из SVN

Если вы собираете &kdevelop; из SVN, начальные шаги сборки зависят от того, загрузили ли вы рабочую копию (checkout) или обновили ранее загруженную копию (update).

После svn checkout

  Вы должны инициализировать сборочную систему после скачивания рабочей копии. Тоже самое необходимо сделать если вы хотите начать сборку с нуля. Наберите:

  - ~/kde3src/kdevelop> `make -f admin/Makefile.common svn-clean`

  и выполните все следующие шаги.

  Для восстановления повреждённых и отсутствующих файлов, возможно, потребуется запустить svn cleanup.

  Выполните команду `svn-clean` чтобы удалить все файлы, не имеющие соответствия в репозитории SVN. Убедитесь что вы сделали резервные копии всей ценной информации перед выполнением этой команды.

После обновления SVN

  Следующий шаг зависит от вывода команды обновления svn update. Если в нём было U или P в начале строки — это означает изменение файла:

      U /some_directory_path/Makefile.am

  или, после загрузки рабочей копии (checkout), введите:

  - ~/kde3src/kdevelop> `make -f Makefile.svn`

  перед выполнением всех следующих шагов.

#### Команды сборки `make`

Теперь вы должны решить, какую систему &kdevelop; вы хотите использовать. На следующем шаге генерируются файлы `Makefile`, который нужны для сборки командой `make`.

Вы можете не указывать параметр `--prefix` при запуске `configure`, в этом случае &kdevelop; будет установлен в каталог &kde; по умолчанию. Подробно это изложено в разделе Примечания по ключам `configure`.

Версия с отладочной информацией

  Если вы хотите следить за тем, что &kdevelop; делает во время выполнения, выберите сборку версии с отладочной информацией. Просто запустите `configure` следующим образом:

  - ~/kde3src/kdevelop> `./configure --enable-debug=full --prefix=`(путь-к-kde3)
Финальная версия

  Если вы хотите просто использовать &kdevelop; как есть (с меньшим размером и более быстрой работой), запускайте `configure` с параметрами по умолчанию:

  - ~/kde3src/kdevelop> `./configure --prefix=`(путь-к-kde3)

  Если вы хотите собрать также документацию по API для &kdevelop;, вам нужно указать соответствующий параметр в команде запуска `configure`:

  - ~/kde3src/kdevelop> `./configure --`(такие-же-ключи) `\`
  - `--with-kdelibsdoxy-dir=$KDEDIR/share/doc/HTML/en/kdelibs-apidocs`
Сборка посредством make и установка

  Скрипт `configure` проверит систему и создаст файл `Makefile`, который будет использовать команда `make`. Команда `make` будет использовать основной файл `Makefile` по умолчанию.

  - ~/kde3src/kdevelop> `make`

  Для установки получите права суперпользователя командой:

  - ~/kde3src/kdevelop> `su`

  и введите пароль пользователя root. После этого установите &kdevelop;:

  - ~/kde3src/kdevelop> `make install`

  Если &kdevelop; установлен в каталог &kde; по умолчанию, вы можете сразу запустить IDE. Иначе потребуются некоторые дополнительные шаги. Подробно об этом рассказано в разделе Нестандартный каталог установки.

  На самом деле будут установлены три программы:

  - &kdevelop; IDE — среда разработки, в которой вы обычно работаете.

  - &kdevelop; Assistant — программа автономного просмотра документации, предоставляющая всю функциональность соответствующего модуля &kdevelop; IDE.

  - &kdevelop; Designer — расширение &Qt; Designer, добавляющее специфические для виджеты &kde; и интегрирующее его в &kdevelop; IDE.

### Примечания по ключам `configure`

#### Нестандартный каталог установки

По умолчанию IDE устанавливается в каталог &kde;. Это необходимо &kdevelop; для прямого доступа к некоторым утилитам и модулям, расположенным в этом каталоге. Чтобы использовать другой каталог для установки, запустите `configure` с параметром `--prefix`:

- ~/kde3src/kdevelop> `./configure --prefix=`(путь-к-kde3)

И всё же устанавливать программу в другой каталог не рекомендуется. Конечно, вы можете сделать это, но тогда вы получите очень ограниченную функциональность.

Перед запуском &kdevelop; выполните следующие команды из командной строки:

Обратите внимание на множественную форму: `KDEDIRS`, а не `KDEDIR`

- ~> `export KDEDIRS=/usr/local/kde:/opt/kde3`
- ~> `kbuildsycoca`
- Теперь запустим &kdevelop;:
- ~> `kdevelop`

- Переменная окружения `KDEDIRS` должна содержать список активных каталогов &kde; вашей системы. Обычно это
- `/usr/local/kde`:`/opt/kde3`
- однако в вашей системе это могут быть другие каталоги.
- Каталог `/usr/local/kde`, например, может содержать неполную версию &kde;, которую вы собрали для отладки, а `/opt/kde3` — версию &kde; из вашего дистрибутива.

в оболочке tcsh определение переменных окружения происходит таким образом:

- ~> `setenv KDEDIRS /usr/local/kde:/opt/kde3`

Команда `kbuildsycoca` (build system control cache — кэш системных параметров) выполняет поиск библиотек и записывает их размещение и версию в кэш, чтобы &kdevelop; смог их найти. Это займёт некоторое время, и это нужно выполнять каждый раз перед запуском &kdevelop; из оболочки, если вы установили программу в нестандартный каталог. Конечно, из этих команд можно составить сценарий и запускать только его.

Кроме того можно дополнить файлы `.bashrc` или `.cshrc`, но это не желательно, так как команда будут выполняться при каждом входе в консоль.

Команду `kbuildsycoca` не нужно выполнять с правами суперпользователя. И вообще, заниматься разработкой под root не очень хорошая идея!

## Как получить документацию по &API;

API — сокращение от Application Program Interface (программный интерфейс приложения). Это набор описаний, по которым приложение обращается к операционной системе и другим службам. API приложения &kde; или &Qt; — описание интерфейсов классов и методов, которые используются для навигации по исходному коду приложения.

Последняя версия документации по API находится на сайте KDevelop. Она обновляется каждые 24 часа.

Чтобы собрать документацию по API из исходного кода &kdevelop; самостоятельно, нужно указать где искать API KDELIBS, добавив параметр `--with-kdelibsdoxy-dir` при запуске `configure`:

- ~/kde3src/kdevelop> `./configure --`(прочие параметры)`\`
- `--with-kdelibsdoxy-dir=$KDEDIR/share/doc/HTML/en/kdelibs-apidocs`

(`make` заменит глобальную переменную `$KDEDIR` на каталог, где установлен &kde;). Затем запустите `make` как обычно. После сборки &kdevelop; можно также собрать документацию по API. Для этого выполните

- ~/kde3src/kdevelop> `make apidocs`

Это создаст файл `Doxyfile` в основном каталоге исходного кода &kdevelop;, который передаётся на обработку программе Doxygen, в результате чего будет создано большое количество файлов `.html` в течение некоторого времени (до часа на медленных машинах). После окончания процесса сборки нужно установить документацию. Получите права суперпользователя

- ~/kde3src/kdevelop> `su`

и введите пароль пользователя root, затем установите файлы документации по API:

- ~/kde3src/kdevelop> `make install-apidox`

После этого `make` выведет имя каталога, где установлена документация по API.

Возможно, вы увидите большое количество предупреждений или сообщений об ошибках в процессе сборки документации по API программой Doxygen. Они представляют интерес только для разработчиков &kdevelop;. Если всё пройдёт нормально, файлы `.html` будут доступными для чтения.