Я хочу скомпилировать nginx (с пользовательскими библиотеками), используя обновленный исходный код из GitHub. Но если я загружаю код из GitHub, очевидно, что нет папки "debian" и внутренних файлов.

Итак, когда я использую команду debuild: т.е. debuid clean, я вижу ошибку:

debuild: fatal error at line 629:
cannot find readable debian/changelog anywhere!
Are you in the source code tree?

Можно ли автоматически сгенерировать все файлы в папке debian? Или я должен сделать это вручную?

1 ответ1

1

Можно было бы сделать систему для Автогенераторных простых пакетов, но я не видел ни одного. Все пакеты Debian, о которых я знаю, имеют файлы rules собранные вручную. Кроме того, большинство файлов в подкаталоге debian выглядят одинаково (с различиями в сценариях) для разных пакетов.

Для этого я создал 48 различных пакетов для своей работы и предоставил соответствующие сценарии в tar-архивах с исходным кодом, но в другом подкаталоге, чтобы избежать конфликта с упаковщиками Debian. Debian не распространяет свои скрипты сборки в исходных архивах, потому что их политика заключается в том, чтобы распространять патчи по нетронутому (неизмененному) исходному источнику. Поэтому, скорее всего, единственными источниками, где вы могли бы увидеть эти две комбинации, являются разработчики, которые создают собственные пакеты.

Возможно, вы сможете адаптировать скрипты из данного пакета Debian (хотя у некоторых есть странные причуды). Для начала вам нужно найти пакетные скрипты. Я обычно захожу на страницу сообщений об ошибках

https://www.debian.org/Bugs/

и (не все пакеты имеют одинаковые имена), ищите ошибки в этом пакете, например, nginx введите описание ссылки здесь. На этой странице есть указатель на страницу пакета. В нем есть ссылки, указывающие на пакет различных выпусков, например, jessie (stable), и по этой ссылке вы переходите на страницу, на которой есть (в крайнем правом углу) ссылки на

Система сборки Debian предполагает, что эти части доступны отдельно; для моих собственных сборок я написал скрипт, который предполагает, что мои скрипты находятся в другом месте, о котором идет речь. Для любого решения вам может потребоваться дополнительное чтение.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .