Страница 1 из 1

Сборка пакета с установкой зависимостей из частных реп

Добавлено: 20 май 2020, 11:11
Zeffanyx
Блин, когда это уже прекратится? Какой мега-секретный репозиторий нужно ещё подключить? Main-тестинг уже есть.

Неофициальная сборка новой plasma5

Добавлено: 20 май 2020, 19:52
VictorR2007
Zeffanyx писал(а):
20 май 2020, 11:11
Блин, когда это уже прекратится? Какой мега-секретный репозиторий нужно ещё подключить? Main-тестинг уже есть.
Да никогда не прекратится, раз вы пытаетесь собирать на рабочей системе.
Пора освоить mock-urpm, чтобы не было таких проблем.
При сборке на mock-urpm устанавливаются только те пакеты, которые нужны для сборки.
На рабочей системе это не прокатит.
У вас установлен openssl-1.1, который нужен для сборки qt-5.15, а при сборке у вас пытаются установиться openssl-1.0-devel.
В последнем архиве есть ещё новый poppler, который нужен для последних версий applications, так что при сборке на системе
тоже могут возникнуть подобные конфликты.
Мне приходится делать радикальные обновления, чтобы продолжалось обновление на 2016.1.
На старых пакетах и gcc5 ничего не хочет собираться.
Переходите на сборку с помощью mock-urpm.
Там легко собирать, легче чем на системе, и всегда можно манипулировать источниками пакетов для сборки,
и никогда не будет проблем, как у вас выше.

Неофициальная сборка новой plasma5

Добавлено: 20 май 2020, 20:20
VictorR2007
Запустил сборку audacity-2.4.0.
Никаких проблем с зависимостями.
В mock-urpm без запинки установились все зависимости.
Если будете собирать, то из спека audacity нужно убрать строку
Requires: suil-qt4-in-gtk2
А то после такой сборки, пакет audacity потянет к установке пакеты от qt4.
Могут опять быть конфликты.
У архиве лежит audacity-2.3.3 без этой зависимости, поэтом не тянет qt5.

Неофициальная сборка новой plasma5

Добавлено: 20 май 2020, 21:51
VictorR2007
Zeffanyx писал(а):
20 май 2020, 11:11
Блин, когда это уже прекратится?
Вы хотели собрать пакет audacity-2.4.0.
Можете собрать этот пакет пакет с помощью mock-urpm.
Пойдёт этот src https://yadi.sk/d/tdADwGRuEBD1_A
Нужно перед сборкой отключить источники i586, потом установить пакет mock-urpm, а потом дать команду

Код: Выделить всё

mock-urpm -v /путь к / файлу/audacity-2.4.0-1.src.rpm
При первом запуске спросит пароль рута, чтобы выбрать, для какой версии собрать.
Укажете Rosa-2016.1-x86_64, и можно ждать окончания сборки.
Если при первом запуске произойдёт сбой при создании сборочницы, (иногда случается при большом количестве доп. источников),
повторить последнюю команду.

Неофициальная сборка новой plasma5

Добавлено: 20 май 2020, 23:45
Zeffanyx
VictorR2007 писал(а):
20 май 2020, 21:51
Zeffanyx писал(а):
20 май 2020, 11:11
Блин, когда это уже прекратится?
Вы хотели собрать пакет audacity-2.4.0.
Можете собрать этот пакет пакет с помощью mock-urpm.
Пойдёт этот src https://yadi.sk/d/tdADwGRuEBD1_A
Нужно перед сборкой отключить источники i586, потом установить пакет mock-urpm, а потом дать команду

Код: Выделить всё

mock-urpm -v /путь к / файлу/audacity-2.4.0-1.src.rpm
При первом запуске спросит пароль рута, чтобы выбрать, для какой версии собрать.
Укажете Rosa-2016.1-x86_64, и можно ждать окончания сборки.
Если при первом запуске произойдёт сбой при создании сборочницы, (иногда случается при большом количестве доп. источников),
повторить последнюю команду.
Спасибо, попробую. И всё же, откуда в вашей сборке те "более новые" пакеты?

Неофициальная сборка новой plasma5

Добавлено: 21 май 2020, 09:56
VictorR2007
Zeffanyx писал(а):
20 май 2020, 23:45
Спасибо, попробую. И всё же, откуда в вашей сборке те "более новые" пакеты?
Ну вы же подключили источник из архива, где 2000 новых пакетов.
Плюс источники из сетевых репозиториев, где их тоже полно.
Потом попытались установить вручную devel, и нарвались.
Если уж хотите собирать на рабочей системе, то не нужно вручную устанавливать девелы.
Нужно сначала удалить почти все пакеты devel, ну кроме ядра.
Потом установить в систему пакет тот src, который будете собирать, например, audacity-2.4.0-1.src.rpm.
Или можно это сделать в консоли, командой

Код: Выделить всё

urpmi --buildrequires /путь к пакету/audacity-2.4.0-1.src.rpm
Сам пакет audacity-2.4.0-1.src.rpm конечно не установиться, но будут установлены все нужные для сборке зависимости.
И если они установились без ошибок, можно собирать.
По окончании сборки можно дать команду

Код: Выделить всё

urpme --auto-orphans
и все пакеты devel, которые установились при установке пакета audacity-2.4.0-1.src.rpm, будут удалены.
Но такое нужно обсуждать в отдельной теме.
Эту тему почищу через пару дней.

Неофициальная сборка новой plasma5

Добавлено: 21 май 2020, 11:31
Zeffanyx
VictorR2007 писал(а):
21 май 2020, 09:56

Код: Выделить всё

urpmi --buildrequires /путь к пакету/audacity-2.4.0-1.src.rpm
Эта команда сразу работает? Не нужно подключать источники с srpm?

Неофициальная сборка новой plasma5

Добавлено: 21 май 2020, 14:49
VictorR2007
Zeffanyx писал(а):
21 май 2020, 11:31
Эта команда сразу работает? Не нужно подключать источники с srpm?

Код: Выделить всё

asus ~ # urpmi --help

использование:
--buildrequires - установить требуемые для сборки пакеты
Источники с srpm вообще никогда не зачем подключать.
Для сборки пакетов нужны девелы, и то, что они подтянут.
Всё, что нужно для сборки, записано в спеке, и команда
urpmi --buildrequires
установит то, что записано в спеке.

Сборка пакета с установкой зависимостей из частных реп

Добавлено: 21 май 2020, 15:29
Zeffanyx
VictorR2007 писал(а):
20 май 2020, 19:52
да не прекратится, раз вы пытаетесь собирать на рабочей системе.
Я собрал Audacity 2.4, никаких проблем. Также, я понимаю удобство mock-rpm, который позволяет не захламлять систему лишними пакетами для сборки.
Однако, вопрос был в другом. Если использовать обычную Росу и обновиться до новой Плазмы из скачанного архива - то всё ок. Но если поставить систему из экспериментального ISO, то выясняется, что некоторые пакеты не удаётся поставить из-за того, что тот ISO был собран с применением неких более новых пакетов, отсутствующих в официальных источниках. Вопрос же шире, чем просто некоторые devel-пакеты.

Сборка пакета с установкой зависимостей из частных реп

Добавлено: 21 май 2020, 17:42
VictorR2007
Zeffanyx писал(а):
21 май 2020, 15:29
Но если поставить систему из экспериментального ISO, то выясняется, что некоторые пакеты не удаётся поставить
Не удастся поставить пакеты, которые старее, чем уже установленные.
Или пакеты, собранные с некоторыми более новыми пакетами.
Но это не обязательно.
Часть пакетов, например qt-5.15 и qbittorrent собраны с новым openssl-1.1 и boost-1.73.0, но пакеты, собранные
со старыми версиями этих пакетов установятся без проблем.
Могут быть проблемы с пакетами, где в зависимостях для сборки есть
BuildRequires: pkgconfig(libnm-glib)
BuildRequires: pkgconfig(libnm-util)
BuildRequires: pkgconfig(NetworkManager)
или для установки есть
Requires: libnm-glib
Requires: libnm-util

Это пакеты от старого NetworkManager.
А архиве новый networkmanager-1.23.90.
Для сборки с ним нужно ставить
BuildRequires: pkgconfig(libnm)
а для установки как зависимость
Requires: libnm

Пакетов, входящих в старый NM больше просто нет

Я пересобрал и положил в архив все пакеты, про которые знаю, что он есть в зависимостях,
но если в репах есть пакет, в спеке которого записаны зависимости старого пакета NetworkManager,
то получится такая ошибка, как у вас выше.
Значит нужно вычислять и пересобирать такие пакеты.
Я ведь собираю именно plasma5, и проверяю и обкатываю всё именно с её работой.
Так что приложения, которыми я не пользуюсь, выпадают из моего внимания.
Ну и многое нельзя установить вообще.
Вы же не можете установить на plasma5 пакет kdebase4-workspace,
или на kde4 установить пакет plasma5-workspace.

Сборка пакета с установкой зависимостей из частных реп

Добавлено: 21 май 2020, 18:08
Zeffanyx
Ну вот, теперь понятнее стало. Спасибо за разъяснение.