LINUX.ORG.RU

Как перекомпилировать kdialog?

 ,


0

2

Давно пользуюсь KDE. Хочу поправить kdialog, так как там есть баг, который меня раздражает. На багтрекере баг есть, ему уже 2 года.
Как я себе представляю это: соберу из исходников kdialog, поправлю и закоммичу.
Проблема в том что я не знаю даже как его собрать.
Вот исходники https://github.com/KDE/kdialog
Как его собрать, что нужно?
Мануалы в интернете описывают как его использовать, а я хочу поправить.

Как минимум нужно установить: git, cmake, make, gcc-c++, qt5-devel, kf5-kguiaddons-devel (может ещё что-то; это для Fedora - у тебя возможно имена пакетов будут другие).

1. Клонируем репозиторий:

git clone https://github.com/KDE/kdialog.git

2. Инициализируем систему сборки, если каких-либо библиотек для сборки не хватит - команда вернёт ошибку:

cd kdialog/
mkdir build && cd build && cmake ..

3. Если предыдущая команда отработала без ошибок - собираем:

make

Что за баг кстати?

Ja-Ja-Hey-Ho ★★★★
()

У тебя же откуда-то уже установлен kdialog? Из системного пакета, по-видимому. Так возьми этот пакет, добавь туда свой патч, и установи штатным образом. Других путей нет.

slovazap ★★★★★
()
Ответ на: комментарий от slovazap

возьми этот пакет [из поставки], добавь туда свой патч, и установи штатным образом.

+1.

Других путей нет.

Почему же. Есть. В частности именно тот, каким т. Centrin0 пожелал пойти.

Zmicier ★★★★★
()
Ответ на: комментарий от XMs

Что-то скомпилировалось. SO-библиотеки не вижу.

Что дальше? :)
Я web-программист, проекты на С под Linux на не собирал никогда.

Centrin0
() автор топика
Последнее исправление: Centrin0 (всего исправлений: 2)
Ответ на: комментарий от Centrin0

KDialog — открывалка диалогов для скриптов или не-Qt программ, откуда там возьмётся библиотека?

Если тебя интересует реализация KDE-шных файловых диалогов, то тебе скорее всего нужно смотреть в сторону пакета plasma-integration

Gary ★★★★★
()
Ответ на: комментарий от Centrin0

проекты на С под Linux на не собирал никогда

Это проект не на C, а на C++/Qt. Как ты собрался исправлять баги, если ты даже не знаешь, на каком языке написан софт?

XMs ★★★★★
()
12 января 2018 г.
Ответ на: комментарий от Centrin0

Я web-программист, проекты на С под Linux на не собирал никогда.

Чтобы собирать пакеты в своём дистрибутиве, быть погромисом не нужно.

ashot ★★★★
()
  • zypper si kdialog
  • заходишь в ~/rpmbuild
  • Правишь сырцы в архиве или спек
  • rpmbuild -ba kdialog.spec
  • ставишь полученный пакет

В любом другом дистре наверняка найдется аналог «поставить сырцопакет для пересборки»

wolph ★★
()
Последнее исправление: wolph (всего исправлений: 2)
Ответ на: комментарий от wolph

В gentoo:

1. В локальном оверлее пакета (куда скопировали и патч в подкаталог files) добавляем, например, для kdialog-17.08.3.ebuild перед секцией «src_configure()» секцию

PATCHES=( "${FILESDIR}/имя_патча.diff" )

src_prepare() {
	default
}

2. Сохраняем и выполняем команду «repoman manifest»

3. Запускаем команду для установки пакета «emerge -1av =kdialog-17.08.3:local»

grem ★★★★★
()
Ответ на: комментарий от Gary

Угу, но один из генту-девелоперов мне недавно советовал использовать eaply вместо epatch, возможно это касалось того случая. Я стараюсь переписывать ebuild так, чтобы была возможность, если что добавить его в дерево.

grem ★★★★★
()
Последнее исправление: grem (всего исправлений: 2)
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.