Я схожу с ума здесь. Я создал инструмент, который не нуждается в какой-либо реальной компиляции - это всего лишь скрипт на Perl - и когда я запускаю bzr builddeb
для него, я получаю РАБОЧИЙ файл .deb, который копирует мой скрипт - zfsync - в / usr / bin / zfsync, когда я запускаю dpkg -i zfsync_1.0.0-0ubuntu3_all.deb
.
Однако, когда я запускаю bzr builddeb -S
, а затем dput
полученный файл source.changes для моего PPA, он создает без ошибок ... но apt-get install zfsync приводит к "успешной" установке, только мой бинарный файл фактически не помещается в / usr / bin!
У меня есть файл debian / install, который содержит zfsync usr/bin
и ничего больше. В отчаянии я создал простой Makefile, который, если запустить make install
, также скопирует zfsync в / usr / bin. Однако, похоже, ничто не помогает, и получасовое время «постройки» на богатырской PPA-ферме Canonical заставляет меня сойти с ума.
Когда я выполняю apt-get source zfsync, поиск в выбранной директории с исходным кодом не показывает мне никакого файла debian/install
. Я не знаю, почему PPA извлекает этот файл, но, очевидно, это так - и без него мой сценарий фактически не устанавливается.
Пожалуйста, пожалуйста, есть ли какие-нибудь гуру упаковки? Помогите!
Я до сих пор понятия не имею, почему он меня облажал - я следовал руководству по сборке Ubuntu к письму, - но в итоге все заработало.
Я закончил тем, что сделал: apt-get source zfsync
в совершенно другой каталог, а затем изучил, что там было.
В дополнение к папке "zfsync-1.0.0", которая содержала все мои вещи, была папка "zfsync", в которой было usr/share/doc
, но вообще не было usr/bin
. Я вручную создал usr/bin/zfsync
в папке «zfsync», убедился, что в «debian / install» есть «zfsync usr / bin», затем сделал bzr init
, a bzr commit
и a dput ppa:jrssnet/zfsync zfsync_1.0.0-0ubuntu5_source.changes
... и через пять или десять минут УСПЕХ! Процесс сборки Ubuntu фактически привел к созданию не только .deb, но и .deb, который фактически установил мой чертов сценарий. :)