Гид по технологиям

Как скомпилировать Amarok 2 из Git в Kubuntu 9.10 Karmic

• 5 min read • Linux • Обновлено 21 Nov 2025
Сборка Amarok 2 из Git на Kubuntu 9.10
Сборка Amarok 2 из Git на Kubuntu 9.10

Автор: Stephan Jau
Версия: v1.1
Последнее изменение: 14 декабря 2009

Введение

Amarok — это хороший музыкальный плеер для Linux. В выпуске Kubuntu 9.10 (Karmic) в официальных репозиториях присутствует стабильная версия Amarok, но проект активно развивается, и новые обновления в репозитории не появляются. Чтобы быть в курсе последних изменений, придётся собирать Amarok из исходников. Сборка несложная, но требует установки зависимостей и учёта нескольких нюансов.

Эта инструкция основана на старой версии для Kubuntu 8.10. Изменился способ разработки (SVN → Git) и ряд зависимостей, поэтому здесь — обновлённая пошаговая инструкция.

Важно: инструкция ориентирована на Kubuntu 9.10 (Karmic). Для других версий Ubuntu/KDE часть шагов может отличаться.

Что понадобится (кратко)

  • Учетная запись с правами sudo.
  • Доступ в Интернет для загрузки исходников и пакетов.
  • Несколько гигабайт свободного места в домашней директории (исходники, сборки).
  • Время — сборка MySQL и Amarok может занять от десятков минут до пары часов в зависимости от железа.

Простейшая концепция: установить dev-пакеты → подготовить окружение (KDE-путь в $HOME) → скачать исходники (Amarok, MySQL, дополнительные модули) → собрать их по очереди → установить и обновить системные конфиги KDE.

Быстрая схема работ (схема принятия решения)

  • Нужно последнее из Git? → Собираем из исходников.
  • Нужна только стабильная версия из репо? → Используйте apt/ppa.

1. Удаление текущей установки Amarok

Удалите установленную версию Amarok, чтобы избежать конфликтов:

sudo apt-get purge amarok amarok-common

Примечание: вместо purge можно использовать remove. purge удаляет также конфиги и пользовательские данные (например статистику) — сделайте резервную копию при необходимости.

2. Обновить систему

Рекомендую сначала обновить систему:

sudo apt-get update && sudo apt-get upgrade

3. Установить требуемые пакеты

Установите базовые инструменты разработки и пакеты, которые потребуются для сборки:

sudo apt-get install git-core build-essential kubuntu-restricted-extras kde-devel subversion libncurses5-dev libtag1-dev libqca2-dev libstrigiqtdbusclient-dev libstreamanalyzer-dev

Замечание: пакета kubuntu-restricted-extras формально не обязателен, но он добавляет кодеки и другие удобства для воспроизведения музыки.

4. Расширить .bashrc и myenv.sh (KDE / не-KDE)

Надо добавить в окружение пути, чтобы локальная сборка KDE/Amarok использовала bin и библиотеки из $HOME/kde.

KDE-пользователи выполняют:

echo '' >> ${HOME}/.bashrc  
echo 'export PATH=$HOME/kde/bin:$PATH' >> ${HOME}/.bashrc  
mkdir -p ${HOME}/.kde/env  
echo 'export KDEDIR=$HOME/kde' >> ${HOME}/.kde/env/myenv.sh  
echo 'export KDEDIRS=$KDEDIR' >> ${HOME}/.kde/env/myenv.sh

Пользователи без KDE выполняют:

echo '' >> ${HOME}/.bashrc  
echo 'export PATH=$HOME/kde/bin:$PATH' >> ${HOME}/.bashrc  
echo 'export KDEDIR=$HOME/kde' >> ${HOME}/.bashrc  
echo 'export KDEDIRS=$KDEDIR' >> ${HOME}/.bashrc

Проверьте, что строки добавились:

cat ${HOME}/.bashrc  
cat ${HOME}/.kde/env/myenv.sh

Если вы не используете KDE, выполните только первую команду проверки.

5. Перезагрузить .bashrc

Примените изменения окружения:

source ${HOME}/.bashrc

6. Создать необходимые папки

Создайте структуру директорий для исходников и сборки:

mkdir -p ${HOME}/kde/src  
mkdir -p ${HOME}/kde/build/amarok

7. Скачать Amarok (Git)

Для полной сборки потребуется репозиторий Amarok:

cd ${HOME}/kde/src  
git clone git://gitorious.org/amarok/amarok.git

8. Скачать MySQL (нужен исходник для интеграции)

MySQL интегрирован в Amarok 2, поэтому нужен исходный код MySQL. Официальная страница загрузки: http://dev.mysql.com/downloads/mysql/5.1.html#source

Можно скачать конкретный тарбол командой (пример из оригинала):

cd ${HOME}/kde/src  
wget http://dev.mysql.com/get/Downloads/MySQL-5.1/mysql-5.1.40.tar.gz/from/http://mirror.switch.ch/ftp/mirror/mysql/

Примечание: при изменении версии подставьте соответствующее имя архива и папки.

9. Распаковать и собрать MySQL

Если вы скачали mysql-5.1.40 в указанную директорию, выполните:

tar xzvf mysql-5.1.40.tar.gz  
cd mysql-5.1.40  
cp -R ${HOME}/kde/src/amarok/supplementary_scripts/mysqle/* .

Если у вас многоядерный процессор, можно распараллелить сборку. Примеры: dual-core → -j3, quad-core → -j5; если возникают проблемы, установите -j1.

export MAKEOPTS=-j2

Соберите MySQL (процесс может быть длительным):

./build-mysqle.sh --prefix=${HOME}/usr

10. Сборка taglib-extras

taglib-extras вынесен отдельно, его нужно собрать отдельно:

cd ${HOME}/kde/src  
svn co svn://anonsvn.kde.org/home/kde/trunk/kdesupport/taglib-extras/ taglib-extras  
cd taglib-extras  
mkdir build  
cd build  
export LD_LIBRARY_PATH=${HOME}/kde/build/taglib-extras/taglib-extras  
cmake -DWITH_ASF=On -DWITH_MP4=On -DCMAKE_INSTALL_PREFIX=${HOME}/kde ..  
make  
make install

11. Сборка QtScriptGenerator

Этот модуль также компилируют отдельно. Скачайте архив:

cd ${HOME}/kde/src  
wget http://qtscriptgenerator.googlecode.com/files/qtscriptgenerator-src-0.1.0.tar.gz  
tar xfvz qtscriptgenerator-src-0.1.0.tar.gz  
cd qtscriptgenerator-src-0.1.0

На Karmic требуется патч для GCC 4.4. Создайте файл патча:

nano qtscriptgenerator.gcc-4.4.patch

Вставьте в него следующий текст:

diff -uNr generator.orig/parser/rpp/pp.h generator/parser/rpp/pp.h
--- generator.orig/parser/rpp/pp.h  2008-12-05 11:01:44.000000000 +0100
+++ generator/parser/rpp/pp.h   2008-12-13 10:42:22.000000000 +0100
@@ -30,6 +30,7 @@
 #include 
 
 #include 
+#include 
 
 #ifdef HAVE_MMAP
 # include sys/mman.h>

Сохраните файл и примените патч:

patch -p0 < qtscriptgenerator.gcc-4.4.patch

Теперь можно собрать генератор и создать биндинги:

export INCLUDE=/usr/include/qt4  
cd generator  
qmake  
make  
./generator  
cd ../qtbindings  
qmake  
make

Скопируйте плагины в системную директорию Qt:

cd ../plugins/script  
sudo cp -R * /usr/lib/qt4/plugins/script/

12. Включение дополнительных плагинов (liblastfm и др.)

Если вы хотите поддерживать scrobbling в Last.fm, соберите liblastfm:

sudo apt-get install qt4-qmake pkg-config libsamplerate-dev libfftw3-dev ruby g++ libqt4-dev  
cd ${HOME}/kde/src/  
wget http://cdn.last.fm/src/liblastfm-0.3.0.tar.bz2  
tar xvfj liblastfm-0.3.0.tar.bz2  
cd liblastfm-0.3.0  
./configure --release --prefix /usr/local  
make  
sudo make install

Для остальных плагинов достаточно установить соответствующие dev-пакеты. По списку:

# libgpod - также нужен для синхронизации Gdk устройств
sudo apt-get install libgpod4 libgpod-dev
# libmtp
sudo apt-get install libmtp8 libmtp-dev
# curl
sudo apt-get install curl libcurl4-openssl-dev
# libxml2
sudo apt-get install libxml2 libxml2-dev
# loudmouth
sudo apt-get install libloudmouth1-0 libloudmouth1-dev

Выберите только те пакеты, которые нужны вам.

13. Сборка Amarok

Переходим к основной сборке Amarok:

cd ${HOME}/kde/src/amarok  
mkdir build  
cd build  
cmake -DCMAKE_INSTALL_PREFIX=${HOME}/kde -DCMAKE_BUILD_TYPE=debugfull ${HOME}/kde/src/amarok  
make  
make install

Это займёт время в зависимости от вашего компьютера.

14. Обновить конфиг KDE

После установки обновите кэш KDE:

kbuildsycoca4 --noincremental

15. Запуск Amarok

Запустите Amarok из командной строки:

amarok

Если вы видите интерфейс и плеер стартует — сборка успешна.

Частые ошибки и способы их устранения

  • Проблема: сборка останавливается с ошибкой «не найден пакет dev». Решение: проверьте, установлен ли соответствующий -dev пакет (например libxml2-dev, libcurl4-openssl-dev).
  • Проблема: плагины не видны. Решение: убедитесь, что плагины скопированы в /usr/lib/qt4/plugins/script/ и что права доступа позволяют чтение.
  • Проблема: неизвестные symbol при запуске. Решение: проверьте LD_LIBRARY_PATH и переменные окружения KDEDIR/KDEDIRS.

Важно: если вы изменяли MAKEOPTS, верните его к безопасному значению или к -j1 при отладке.

Когда этот подход не подходит

  • Если вам достаточно версий из официального репозитория или PPA — собирание из исходников не нужно.
  • Если вы используете более новую или старую версию Ubuntu/KDE, некоторые патчи и пути могут не работать. В этом случае лучше искать актуальные инструкции под вашу версию.

Альтернативы

  • Установка через PPA (если доступен): проще и быстрее, но версии могут запаздывать.
  • Использование готовых бинарных пакетов для вашей дистрибуции.
  • Сборка внутри контейнера или chroot для изоляции и повторяемости сборки.

Чеклист перед началом (роль-based)

  • Для обычного пользователя: резервная копия настроек Amarok; удалить старую версию.
  • Для разработчика/тестировщика: установить build-essential, cmake, git; подготовить отдельную директорию для сборки.
  • Для системного администратора: проверить свободное место и политику установки в /usr/local и $HOME.

Критерии приёмки

  • Amarok запускается без аварий.
  • Интерфейс отображается и проигрывание работает.
  • Поддерживаемые плагины (например last.fm, mtp) загружаются, если они были собраны.

Совет по отладке

  • Запуск из терминала показывает логи и ошибки.
  • Используйте strace/ldd на бинарнике или плагинах, чтобы найти недостающие библиотеки.
  • При проблемах с окружением временно экспортируйте KDEDIR и PATH вручную в терминале и повторите запуск.

Заключение

Сборка Amarok 2 из Git на Kubuntu 9.10 требует нескольких шагов: подготовка окружения, сборка вспомогательных библиотек (MySQL, taglib-extras, QtScriptGenerator), установка плагинов и финальная сборка самого Amarok. Метод применим, если вы хотите последнюю версию или патчи, отсутствующие в репозитории. Если нужна стабильность и минимальные усилия — используйте готовые пакеты или PPA.

Краткие рекомендации: планируйте время на сборку, следите за -dev пакетами и переменными окружения, при возникновении ошибок смотрите логи и проверяйте пути библиотек.

Примечание: если вы переносите процедуру на другой релиз Ubuntu/KDE, проверьте обновлённые названия пакетов и доступность патчей.

Поделиться: X/Twitter Facebook LinkedIn Telegram
Автор
Редакция

Похожие материалы

Несколько аккаунтов Skype: Multi Skype Launcher
Программное обеспечение

Несколько аккаунтов Skype: Multi Skype Launcher

Журнал для работы: повысить продуктивность
Productivity

Журнал для работы: повысить продуктивность

Персональные звуки уведомлений на Android
Android.

Персональные звуки уведомлений на Android

Скачивание шоу Hulu для офлайн‑просмотра
Стриминг

Скачивание шоу Hulu для офлайн‑просмотра

Microsoft Start: персонализированная новостная лента
Новости

Microsoft Start: персонализированная новостная лента

Как изменить имя в Epic Games быстро
Гайды

Как изменить имя в Epic Games быстро