Перейти к содержимому

Сборка

Сборка Kate из исходных кодов в Linux

В настоящее время исходный код Kate находится в экземпляре GitLab [invent.kde.org](https:// invent.kde.org/utilities/kate). В этом руководстве объясняется, как собрать Kate, не затрагивая глобальную установку.

Всё будет происходить в отдельном каталоге для разработки. Это позволяет обойтись без прав администратора и всегда можно вернуться к использованию глобально установленной Kate, если текущая сборка не работает.

Поскольку в этом руководстве будет представлена настройка, позволяющая разрабатывать и другие части программного стека KDE, далее речь пойдёт о настройке среды разработки KDE. Помимо частей приложения Kate, будут скомпилированы необходимые KDE Frameworks. Это упрощает внесение вклада на всех уровнях программного стека KDE.

Выберите каталог разработки Kate и KDE

Выберите каталог для размещения всех файлов разработки Kate и KDE. За исключением локальных файлов конфигурации пользователя, ничего за пределами этого каталога затронуто не будет. Его можно использовать для разработки любой части программного стека KDE.

В оставшейся части описания используется

~/projects/kde

Настройте по своему усмотрению.

Установите kdesrc-build

Установка сводится к клонированию текущей версии.

mkdir -p ~/projects/kde/src
cd ~/projects/kde/src
git clone https://invent.kde.org/sdk/kdesrc-build.git

Для удобства использования рекомендуется создать символическую ссылку на сценарий kdesrc-build в папку, находящуюся в переменной окружения PATH, например, в локальную папку пользователя bin:

ln -s ~/projects/kde/src/kdesrc-build/kdesrc-build ~/bin

Настройка kdesrc-build

В kdesrc-build есть несколько этапов настройки, которые могут автоматически настроить некоторые параметры, см. введение.

Здесь приведён файл ~/.config/kdesrc-buildrc, достаточный для разработки Kate.

Просто скопируйте приведённый ниже вариант в домашний каталог как ~/.config/kdesrc-buildrc и настройте пути по необходимости. Если вы придерживаетесь пути ~/projects/kde, выбранного выше, этот вариант можно использовать без изменений.

global
    # использовать новейшее ПО на основе KF6 и Qt6.
    branch-group kf6-qt6

    # Используйте ninja для ускорения инкрементной сборки, отключите некоторые компоненты Qt 5 для
    # уменьшения зависимостей
    cmake-options -G "Ninja" -DBUILD_WITH_QT6=ON -DQT_MAJOR_VERSION=6 -DPHONON_BUILD_QT5=OFF -DBUILD_QT5=OFF

    # Инструментарий clangd
    compile-commands-export yes
    compile-commands-linking yes

    # плоская структура
    directory-layout flat

    # Каталог установки ПО KDE
    install-dir ~/projects/kde/usr

    # Папка для загруженного исходного кода
    source-dir ~/projects/kde/src

    # Каталог для сборки KDE перед установкой относительно исходного каталога по умолчанию
    build-dir ~/projects/kde/build
end global

include ${module-definitions-dir}/kf6-qt6.ksb

Ниже подробно описаны важные строки для удобной разработки в Kate (или других приложений KDE).

Интеграция с LSP

# Инструментарий clangd
compile-commands-export yes
compile-commands-linking yes

Эти строки гарантируют, что CMake сгенерирует файлы compile_commands.json, необходимые для интеграции LSP на основе clangd. Помимо их создания в каталоге сборки, параметр связывания создаст на них символические ссылки обратно в ваши исходные каталоги. Это позволяет использовать плагин LSP в Kate (и других редакторах) без дополнительной настройки.

Установите необходимые зависимости (необязательно)

kdesrc-build предоставляет режим начальной настройки для установки необходимых пакетов в нескольких распространённых дистрибутивах, чтобы начать разработку. Это полезно, если вы не уверены, что все нужные пакеты для разработки установлены в вашей системе, и не хотите заниматься этим вручную. Поскольку при этом будет предпринята попытка установить пакеты для вашего дистрибутива, для этого шага потребуются права администратора. Для этого просто выполните:

kdesrc-build --initial-setup

Файл .config/kdesrc-buildrc уже создан и не будет изменён. Для дальнейшего использования также не потребуется изменять настройки оболочки.

Сборка Kate и зависимостей

Для компиляции Kate и всех необходимых зависимостей KDE теперь достаточно ввести:

kdesrc-build --include-dependencies kate

На современных компьютерах это занимает несколько минут. Можно выпить кофе или подумать, что именно нужно реализовать.

Пока версия KF 6 наших зависимостей не включена в вашу поставку, возможно, имеет смысл собрать дополнительные компоненты для улучшенного оформления и интеграции терминала:

kdesrc-build --include-dependencies breeze plasma-integration kwayland-integration konsole kate

Если требуется собрать только Kate без зависимостей, поскольку на системе уже установлены достаточно свежие версии, можно попробовать:

kdesrc-build --no-include-dependencies kate

Но учитывая, что на современных компьютерах время компиляции невелико, удобнее собрать всё сразу — это также гарантирует использование новейших и лучших версий фреймворков KSyntaxHighlighting и KTextEditor.

При такой настройке все компоненты программного обеспечения KDE можно собрать простой командой:

kdesrc-build

Учтите: это займёт некоторое время (и место на диске).

Если при сборке отображаются ошибки красным шрифтом, следуйте этому руководству — Решение проблем со сборкой.

Использование инструментов сборки

Для запуска локальной версии Kate необходимо сначала правильно настроить окружение, чтобы загружались нужные модули и прочие компоненты. К счастью, это очень просто:

source ~/projects/kde/build/kate/prefix.sh
kate

Удобный способ обернуть это — создать небольшой сценарий-обёртку для запуска версии Kate из ветки master в локальном каталоге bin:

#!/bin/bash
source ~/projects/kde/build/kate/prefix.sh
exec kate "$@"

Обновляйте своё приложение

Для обновления локальной версии достаточно повторно выполнить указанные выше команды. Они загрузят новые изменения из репозиториев KDE и соберут/установят их в локальный префикс.

Разрабатывайте!

Остаётся вопрос: как лучше всего разрабатывать?

Разумеется, для работы над кодом Kate удобнее всего использовать саму Kate.

После выполнения всех подготовительных действий это легко сделать: просто запустите новую основную версию Kate и передайте ей каталог сборки:

kate ~/projects/kde/build/kate

Также можно перейти в эту папку в терминале и запустить Kate оттуда, тогда файл откроется автоматически:

cd ~/projects/kde/build/kate
kate

Для наилучшей работы с этим убедитесь, что включены как минимум плагины «Проект» и «LSP». Для интеграции сборки в графический интерфейс активируйте также плагин «Сборка».

В результате откроется новое окно Kate, как показано ниже.

В нижней панели инструментов «Текущий проект» по умолчанию доступны два терминала. Первый терминал открыт в каталоге сборки, где можно выполнять команды, например, ninja или ninja install. Второй терминал открыт в исходном каталоге, что удобно для вызовов командной строки git.

При такой настройке модуль LSP (если установлен clangd) должен работать сразу.

Также следует настроить и другие полезные возможности, такие как быстрое открытие в рамках проекта, поиск и замена, а также правильные цели сборки.

Принять участие!

Создайте запрос на слияние на invent.kde.org. Подробнее см. в разделе «Присоединиться».

Получить поддержку?

Если возникли вопросы, их можно задать в разделе Kate на сервере обсуждений KDE и/или присоединиться к нашему каналу Kate в Matrix (более общая информация о Matrix и KDE доступна здесь).

Подробнее см. в разделе Получение помощи.

Сборка Kate из исходных кодов в Windows

Для сборки Kate/KWrite на основе KF5 можно воспользоваться руководством на странице KDE для Windows.

Сборка Kate из исходных кодов в macOS

Для сборки Kate/KWrite на основе KF5 следуйте инструкции на странице [KDE для macOS] (https://community.kde.org/Guidelines_and_HOWTOs/Build_from_source/Mac).