Я пытаюсь создать человечность .deb пакет для (довольно потрясающего) Языка Io. Я не разработчик того языка, таким образом, я еще не знаком с его исходным кодом. Это - моя первая попытка создания .deb файла.
Для создания .deb я следую этим инструкциям:
http://www.webupd8.org/2010/01/how-to-create-deb-package-ubuntu-debian.html
До сих пор я смог создать .deb файл (io_2010.06.01-1_amd64.deb) и файл (io_201.06.01-1_amd64.changes) изменений. Я использую lintian для проверки файла изменений, и он сообщает о проблеме, которую я не знаю, как решить:
$ lintian -Ivi io_2010.06.01-1_amd64.changes
... (lots of messages)
I: io: no-symbols-control-file usr/lib/libiovmall.so
I: io: no-symbols-control-file usr/lib/libgarbagecollector.so
I: io: no-symbols-control-file usr/lib/libbasekit.so
E: io: postinst-must-call-ldconfig usr/lib/libiovmall.so
N:
N: The package installs shared libraries in a directory controlled by the
N: dynamic library loader. Therefore, the package must call "ldconfig" in
N: its postinst script.
N:
N: Refer to Debian Policy Manual section 8.1.1 (ldconfig) for details.
N:
N: Severity: serious, Certainty: certain
N:
N: Removing /tmp/OYuNShEHYz ...
Я считал debian раздел руководства 8.8. Я думаю, что понимаю то, что проблема (я должен удостовериться, что ldconfig вызывается "где-нибудь", возможно на месте, названном "posinst"), но я не знаю, как разрешить его (т.е. где этот "posinsts" файл и как должен я изменять его).
Текущий способ установить Io в Ubuntu является в основном рабочим sudo make install
и затем sudo ldconfig
. Возможно, make-файл должен быть изменен так ldconfig, назван от него?Я не знаю.
Большое спасибо.
postinst
обслуживающий сценарий, который можно добавить к debian
каталог. Большинство прямых пакетов не должно требовать, чтобы специалист по обслуживанию создал этот файл. Debhelper автоматически создаст его для Вас в двоичном пакете. См. и Руководство Нового Специалиста по обслуживанию и разделы Руководства политики Debian по обслуживающим сценариям.