Сборка пакетов сервера Ubuntu - PullRequest
4 голосов
/ 14 мая 2010

Я разработал несколько приложений C ++ на своем рабочем столе Ubuntu. Я хочу создать установочные пакеты, чтобы установить их на сервер Ubuntu.

Может ли кто-нибудь дать рекомендации по созданию пакета сервера Ubuntu?

Ответы [ 2 ]

5 голосов
/ 14 мая 2010

Самый простой способ - создать раздел "install" в вашем make-файле, который установит программу, а затем запустит checkinstall. Возможно, вам придется установить его с aptitude install checkinstall.

checkinstall запускает make install, выясняет, что было изменено, затем создает пакет на его основе.


Чтобы выполнить раздел установки в make-файле, просто введите команды, необходимые для установки вашей программы. Вот пример программы, которая создает двоичный файл с именем «myprogram» и нуждается в некоторой конфигурации в / etc:

# make example
myprogram: main.o something_else.o
    gcc -o myprogram main.o something_else.o -llibrary_goes_here

install: myprogram
    cp myprogram /usr/bin #install binary
    cp -R etc /etc/myprogram # copy "etc" folder to /etc/myprogram

Есть команда с именем install, которая похожа на cp и позволяет вам указать разрешения, но я недостаточно хорошо знаю синтаксис.

Вам также понадобится раздел для каждого файла .o, в котором будет указано, как его скомпилировать (вероятно, gcc -c filename.cpp).

3 голосов
/ 14 мая 2010

Ubuntu использует формат пакета Debian (.deb). Полученный пакет может быть ориентирован на архитектуру (например, i386, AMD64 и т. Д.) Или не зависеть от архитектуры.

Затем вы можете установить получившийся пакет с помощью dpkg -i packagefile.deb в качестве пользователя root.

Теперь ближе к делу: я предлагаю вам поискать информацию о том, как сделать пакет Debian. Я уверен, что есть много хороших справочных сайтов и инструментов, таких как этот: http://debcreator.cmsoft.net/

...