Информация Кодим в Debian c блекджеком и ***


X-Shar

:)
Администрация
Регистрация
03.06.2012
Сообщения
6 084
Репутация
8 206
b2d0688b4e684758b39f07a327d3ba64.png


Всем привет !

Чот надоели новости, за последнее два дня так ничего интересного и не увидел и как следствие здесь ничего ложить не стал...Dmeh-Smeh-Smeh!!!Dmeh-Smeh-Smeh!!!Dmeh-Smeh-Smeh!!!

Кстати и винда тоже надоела, сейчас решил как говорит Недовирус "потыкать палочкой" в *nix системы...смех-смех!!!смех-смех!!!

Короче в этой теме предлагаю рассмотреть процесс создания deb пакета в Дебиан, так-же в общем-то и на юбунте тоже должно работать, ничего сложного, просто ничего другова и не умею пока...

Итак давайте напишем программу "Здравствуй мир !":

Но перед этим установим необходимые компиляторы, а именно gcc:

Вообще конечно он уже должен-быть на дефолте, но на всяк случай в консоле:
Код:
apt-get install gcc

Далее ставим некоторые зависимости:
Код:
apt-get install build-essential dh-make

Далее нам нужно будет создать пакет, в котором мы будем размещать все компоненты. В данном случае пакет будет называться “HelloWorld”. Для установки пакета используются следующие команды:
Код:
mkdir HelloWorld
touch HelloWorld/Makefile
touch HelloWorld/hello.c

Содержание hello.c должно содержать классический “Hello, World”:
Код:
#include <stdio.h>

int main() {
    printf(“Hello, World\n”);
    return 0;
}

Make-файл должен иметь следующее содержание:

Информация для того, кто не знаком с Make-файлами:
make — утилита, автоматизирующая процесс преобразования файлов из одной формы в другую. Чаще всего это компиляция исходного кода в объектные файлы и последующая компоновка в исполняемые файлы или библиотеки.

Утилита использует специальные make-файлы, в которых указаны зависимости файлов друг от друга и правила для их удовлетворения. На основе информации о времени последнего изменения каждого файла make определяет и запускает необходимые программы.
Код:
all:
    gcc hello.c -o hello

clean:
    rm hello || true
В этой точке у Вас есть созданный пакет Debian, который напечатает «Hello, World».

Наконец, мы можем приступить к фактическому созданию пакета! Чтобы инициализировать пакет Debian, мы будем использовать удобную dh_make программу, которую мы устанавливали раньше.

При выполнении следующей команды с вводом тех же настроек, которые указаны ниже, Вы должны получить ошибку, но это плановая ошибка. В данном случае важно понять, что такое dh_make и как решить другие проблемы, с которыми Вы, вероятно, столкнетесь позже при работе с более усовершенствованными пакетами.
Код:
dh_make -p HelloWorld_0.0.1

Type of package: single binary, indep binary, multiple binary, library, kernel module, kernel patch?
[s/i/m/l/k/n] s

Maintainer name  : root
Email-Address    : root@unknown
Date             : Sun, 10 Apr 2016 14:38:32 -0400
Package Name     : HelloWorld
Version          : 0.0.1
License          : blank
Type of Package  : Single
Hit <enter> to confirm:

Could not find HelloWorld_0.0.1.orig.tar.xz
Either specify an alternate file to use with -f,
or add --createorig to create one.
Мы получили сообщение об ошибке. Теперь рассмотрим несколько вещей, которые касаются этой ошибки. Во-первых, что такое orig.tar.xz файл. Во-вторых, почему использовался флаг -p?

Давайте начнем с простого вопроса. Флаг-p используется, потому что dh_make смотрит на имя директории, в которой Вы находитесь в настоящее время, чтобы выяснить имя пакета и версию. Многие могут согласится, что глупо вызывать каталог таким путем, поэтому флаг -p при первом выполнении dh_make передает данные в виде <имя пакета> _ <версия>.

Теперь давайте выясним, что за файл orig.tar.xz. Официальная документация говорит, что это — просто tarball исходного кода, который в нашем случае является просто текущим состоянием каталога.

Теперь простая часть. Выполните следующую команду.
Код:
dpkg-buildpackage

Теперь Вы должны увидеть набор новых файлов в том же каталоге, где размещена Ваша папка HelloWorld.

Нас интересует файл с названием «HelloWorld_0.0.1-1_amd64.deb», который может быть установлен с помощью команды:
Код:
dpkg -i HelloWorld_0.0.1–1_amd64.deb
Теперь вы должны иметь возможность запускать «hello» из любого места на вашем компьютере, и получить текст «Hello, World».

Удачи !WinkSmileWinkSmileWinkSmile
 
Последнее редактирование:
Верх Низ