Сборка пакетов

Смотрим сначала нужный порт в http://crux.nu/portdb/, если есть, то достаточно зайти в наше окружение для сборки:

./setup-chroot

и перейти в каталог с портами:

cd /ts/ports/components

вводим команду с сайта http://crux.nu/portdb/, колонка «Download command», соответствующая нашему порту.

Будет создан каталог /ts/ports/components/имя_программы.

Далее переходим в этот каталог:

cd имя_программы

и собираем:

pkgmk -d

Если сборка прошла успешно, то появится архив имя_программы#версия.pkg.tar.gz

Если программы нет в портах, то надо создать каталог «Название_программы» в /ts/ports/components

cd /ts/ports/components

mkdir Название_программы

cd Название_программы/

Создаем файл Pkgfile по аналогии с другими программами (содержит информацию о пакете и команды, которые должны быть исполнены для сборки пакета).

И собираем:

pkgmk -d

Теперь можно собирать сам пакет для терминального клиента, в каталоге /ts/build/packages создаем каталог с именем пакета, структуру скопировать по аналогии с другими, если что-то сложное с автозапуском или подгрузкой модуля ядра то придется писать скрипт инициализации. Каталог usr не создавать, если /usr/share то положить в /lib, если /usr/bin то в /bin Файлы firmware в /lib/firmware

Если пакет будет подгружаемым pkg, то скрипты положить в rc5.d

Прописываем в build.conf - pkg имя_пакета, собираем ./build, получаем пакет в boot-images/pkg-packages/usbsrvd.pkg

Сборка пакетов вручную

Можно просто вручную архивировать в tar.gz и переименовать в pkg:

tar cvf usbsrvd.tar bin/ etc/ lib/ dependencies

gzip usbsrvd.tar

mv usbsrvd.tar.gz usbsrvd.pkg

Для изменения файлов в пакете можно также распаковать, изменить и снова запаковать. Создать каталог, поместить туда пакет pkg, переименовать в tar.gz

tar xzvf имя_пакета.tar.gz
 
info_complpkg5.txt · Последние изменения: 2016/02/10 19:59 (внешнее изменение)
Recent changes RSS feed Creative Commons License Driven by DokuWiki Made on Mac

Rambler's Top100 Яндекс цитирования



© 2017 nik0el