3 способа установить deb файлы на ubuntu linux

Содержание:

Введение

Deb-пакет это обычный архив файлов, содержащий файлы, предназначенные для установки в систему, а так же некоторые служебные файлы, необходимые для того чтобы эту установку сделать гибкой.

  • Архив control.tar.gz, содержащий скрипты, написанные майнтенером пакета, использующиеся при установке/удалении пакета, а так же другие служебные файлы;
  • Архив data.tar.gz, содержащий двоичные файлы программы, ради которой создан пакет;
  • Файл debian-binary.

Поскольку содержимое пакета может в будущем измениться (будет новый номер версии в debian-binary), то собирать deb-пакет при помощи программ tar, gzip, ar не рекомендуется и этот вариант в статье рассматриваться не будет.

Собирается пакет программой dpkg из специально подготовленной структуры каталогов:

  • DEBIAN/
  • .. path/to/dir/file1
  • .. path/to/dirX/fileX

то есть:

  • Файлы и каталоги, предназначенные для установки в систему. Их расположение в архиве соответствует положению их в файловой системе если считать от корня. Например файл usr/share/doc/package/copyright в deb-архиве после установки будет находиться в /usr/share/doc/package/copyright (все они будут упакованы в архив data.tar.gz);
  • Каталог DEBIAN/, содержащий служебную информацию о пакете. Содержимое этого каталога при сборке будет упаковано в архив control.tar.gz;

Create a package

You can make and distribute your own package very easily.
To start fresh, create a new directory named after your package.
For example, .
This directory will store the package metadata and the package contents.
Inside the project directory, there needs to be one special
directory () with one special file inside it ().

Read more about
Debian control file fields.

A more practical example with a post-installation script:

This is a minimal example of the file:

The line is optional, but frequently needed.
The example above shows how to add multiple dependencies,
how to specify a minimum version with python3,
and how to add a dependency that is satisfied by one of many options.
There are many versions of java listed and any one will satisfy the requirement.
If none of them are installed, it will start from the first
one in the list and try to install it.
This way, it will work if the user has version 8 of the JDK or JRE in full or headless variant.
If none of them are installed it will install the smallest version (the headless jre).

Build the package by running on the project directory like this:

It’s a special little package, but it’s lonely without any files
to install.
Normally a package has some contents like a shared library, man pages,
documentation, an executable program, or systemd service files.

The next thing we’ll need to do is add files to the package.
Some examples of things you might include are:

  • an executable or a shell script launcher in
  • man pages in
  • configuration files in
  • libraries in
  • header files in

In this example, we’ll add a shell launch script for a Java JAR file:

Be sure to the script and place it in the
directory.

Configuration files

List configuration files in
This will allow configuration files to optionally remain when
uninstalling (remove vs purge).
It also prevents updates from overwriting configuration files.

Example :

Examples:

An example script:

Package interrelationships

There are some other variables you can specify in the file:

These can be useful to warn people if your package conflicts with another
package that is already installed.
You can also replace or enhance existing packages.
If other packages would make your package work better,
you can recommend and suggest other packages when the user installs your
package.

Read more about .

How to Install Deb Files (Packages) on Ubuntu

27 Января 2021
|

Ubuntu

Deb — это формат установочного пакета, используемый всеми дистрибутивами на основе Debian.

Хранилища Ubuntu содержат тысячи пакетов DEB , которые могут быть установлены либо из Ubuntu Software Center или из командной строки с помощью и утилиты.

Многие приложения не включены в Ubuntu или какие-либо сторонние репозитории. Эти приложения необходимо загрузить с веб-сайтов разработчика и установить вручную. Будьте особенно осторожны при установке пакетов deb из неофициальных источников.

Скачивание файлов deb 

В целях демонстрации мы загрузим и установим deb-файл TeamViewer . TeamViewer — это комплексное решение для удаленной поддержки, совместного использования рабочего стола, онлайн-встреч и передачи файлов между компьютерами.

Запустите свой веб-браузер и перейдите на страницу загрузки TeamViewer для Linux . Загрузите пакет deb, щелкнув ссылку для загрузки Ubuntu и Debian.

Если вы предпочитаете терминал, вы можете загрузить файл deb с помощью или :

Установка файлов deb из командной строки 

Когда дело доходит до установки пакетов deb из командной строки, в вашем распоряжении несколько инструментов. В следующих разделах мы покажем вам , как использовать , и утилиты для установки пакетов DEB.

Установка файлов deb с помощью  

— это утилита командной строки для установки, обновления, удаления и иного управления пакетами deb в Ubuntu, Debian и связанных дистрибутивах Linux. Он был представлен в Ubuntu 14.04 и сочетает в себе наиболее часто используемые команды из и .

Чтобы установить локальные пакеты deb, вам необходимо указать полный путь к файлу deb. Если файл находится в вашем текущем рабочем каталоге, вместо того, чтобы вводить абсолютный путь, вы можете добавить его перед именем пакета. В противном случае попытается получить и установить пакет из репозиториев Ubuntu.

    Вам будет предложено ввести, чтобы продолжить:

Менеджер пакетов разрешит и установит все зависимости пакетов.

Установка файлов deb с помощью  

это инструмент для установки локальных пакетов deb. По умолчанию он не установлен в Ubuntu, но вы можете установить его с помощью следующей команды:

Чтобы установить пакет deb с типом:

Введите, когда будет предложено, и разрешит и установит пакет deb и все его зависимости за вас.

Установка файлов deb с помощью  

это низкоуровневый менеджер пакетов для систем на базе Debian. Используйте опцию (или ) для установки пакетов deb с .

   В отличие от и , не разрешает зависимости. Если при установке пакетов deb вы получаете какие-либо ошибки зависимостей, вы можете использовать следующую команду для разрешения и установки всех зависимостей пакетов:

Установка пакетов deb с помощью графического интерфейса 

Если вы предпочитаете использовать графический интерфейс, просто загрузите файл deb и откройте его двойным щелчком.

Это откроет центр графического программного обеспечения дистрибутива по умолчанию:

Нажмите кнопку «Установить», и откроется диалоговое окно «Проверка подлинности».

    Введите пароль администратора и нажмите кнопку «Аутентификация».

    Установка может занять некоторое время в зависимости от размера файла и его зависимостей. После установки пакета deb кнопка «Установить» в программном центре Ubuntu изменится на «Удалить».

Вот и все, приложение установлено в вашей системе и вы можете начать им пользоваться.

Мы показали вам, как установить локальные файлы deb в Ubuntu. При установке пакетов из командной строки предпочитайте использовать, поскольку он разрешит и установит все зависимости пакетов.

Добавление репозиториев вручную

Если вы хотите иметь больший контроль над организацией ваших источников, вы можете вручную отредактировать файл и добавить в файл строку репозитория apt.

Для демонстрации мы включим репозиторий CouchDB и установим программное обеспечение. CouchDB — это бесплатная отказоустойчивая база данных NoSQL с открытым исходным кодом, поддерживаемая Apache Software Foundation.

Чтобы добавить репозиторий, откройте файл текстовом редакторе :

Добавьте строку репозитория в конец файла:

/etc/apt/sources.list

Вместо редактирования файла в текстовом редакторе вы можете использовать следующую команду, чтобы добавить строку репозитория в файл :

выведет кодовое имя Ubuntu. Например, если у вас Ubuntu версии 18.04, команда напечатает .

Другой вариант — создать новый файл репозитория в каталоге .

При ручной настройке репозитория вам также необходимо вручную импортировать ключ публичного репозитория в вашу систему. Для этого используйте или :

Приведенная выше команда должна вывести что означает, что ключ GPG был успешно импортирован и пакеты из этого репозитория будут считаться доверенными.

Перед установкой пакетов из вновь добавленного репозитория необходимо обновить индекс пакетов:

После обновления индекса пакетов вы можете устанавливать пакеты из только что добавленного репозитория:

Создание пакета Eric Python IDE

Создаем пакет Eric IDE с поддержкой русского языка. Скачиваем и распаковываем исходники и русификацию.
Перед компиляцией установим необходимые для запуска Eric пакеты.

# aptitude install bicyclerepair libqscintilla2-3 libqt3-i18n libqt4-assistant libqt4-help libqt4-webkit libqt4-xmlpatterns
$ mkdir -p /home/darkfire/deb/eric4ide
$ cd /home/darkfire/deb/eric4ide
$ wget http://downloads.sourceforge.net/project/eric-ide/eric4/4.3.5/eric4-4.3.5.tar.gz
$ wget http://downloads.sourceforge.net/project/eric-ide/eric4/4.3.5/eric4-i18n-ru-4.3.5.tar.gz?use_mirror=sunet
$ tar -xzvf eric4-4.3.5.tar.gz
$ tar -xzvf eric4-i18n-ru-4.3.5.tar.gz
$ cd /home/darkfire/deb/eric4ide/eric4-4.3.5/
$ sudo bash
# checkinstall python install.py

checkinstall 1.6.1, Copyright 2002 Felipe Eduardo Sanchez Diaz Duran
         Эта программа распространяется на условиях GNU GPL


The package documentation directory ./doc-pak does not exist.
Should I create a default set of package docs?  :

Готовится документация к пакету...OK

Пожалуйста напишите описание пакета.
Закончите ваше описание пустой строкой или EOF.
>> Создаем пакет Eric IDE с поддержкой русского языка.
>>

*****************************************
**** Debian package creation selected ***
*****************************************

Этот пакет был создан с использованием данных значений:

0 -  Maintainer: 
1 -  Summary: 
2 -  Name:    
3 -  Version: 
4 -  Release: 
5 -  License: 
6 -  Group:   
7 -  Architecture: 
8 -  Source location: 
9 -  Alternate source location: 
10 - Requires: 
11 - Provides: 

Введите номер для изменения параметра или нажмите ВВОД для продолжения:

...

Compiling eric/uninstall.py ...

Installing eric4 ...

Installation complete.


======================== Установка успешно завершена ======================

Copying documentation directory...
./
./README-i18n.txt
./THANKS
./README
grep: /var/tmp/tmp.hxkpsnHJSB/newfile: No such file or directory

Some of the files created by the installation are inside the build
directory: /home/darkfire/deb/eric4ide/eric4-4.3.5

You probably don't want them to be included in the package,
especially if they are inside your home directory.
Do you want me to list them?  :
Исключить их из пакета? (ответить ДА-хорошая идея)  :

Файлы копируются во временный каталог...OK

Stripping ELF binaries and libraries...OK

Сжимаются страницы руководства...OK

Построение списка файлов...OK

Собирается Debian-пакет...

Удаляются временные файлы...OK

Записывается пакет с резервной копией...OK

Удаляется временный каталог...OK


**********************************************************************

 Done. The new package has been installed and saved to

 /home/darkfire/deb/eric4ide/eric4-4.3.5/eric4_4.3.5-1_i386.deb

 You can remove it from your system anytime using:

      dpkg -r eric4

**********************************************************************

Устанавливаем скомпилированный пакет:

dpkg -i eric4_4.3.5-1_i386.deb

Неудача

при запуске -возникает ошибка

# eric4
Traceback (most recent call last):

File "/usr/lib/python2.6/dist-packages/eric4/eric4.py", line 20, in <module>
  from PyQt4.QtCore import QTextCodec, SIGNAL, SLOT, qWarning, \

ImportError: No module named PyQt4.QtCore

Успешная компиляция на WWW http://shamansir.wordpress.com/2007/07/22/eric-ide-401-at-ubuntu-704/

Создание пакетов

Создают пакеты deb обычно с помощью утилит dpkg — в частности, dpkg-buildpackage. Основы создания пакетов описаны в «Руководстве нового сопровождающего Debian» и «Справочнике разработчика Debian».

Совсем простые, но малопригодные для серьёзного сопровождения пакеты можно создавать с помощью программы CheckInstall.

Debhelper — коллекция небольших программ, которые могут быть использованы в файлах debian/rules (наборах инструкций для сборки deb-пакета). Создана Джо Хессом с целью предоставить создателям пакетов Debian возможность писать структурно более простые debian/rules-файлы и повторно использовать готовые стабильные и удобные решения для многих подзадач сборки пакетов. По состоянию на конец 2010-х годов содержит более 60 небольших программ.

Часто вместе с программами debhelper используют написанную Крейгом Смоллом утилиту dh_make (не являющуюся его частью), которая копирует шаблоны всех файлов, необходимых для постройки deb-пакета из исходного кода программы. Эти шаблоны могут включать информацию, которую предоставил пользователь, и краткую информацию о том, как строится программа из исходного кода. После запуска dh_make, как правило, всё равно необходимо отредактировать большинство файлов шаблонов для того, чтобы построить deb-пакет.

Система CDBS — набор make-правил, использующий debhelper и позволяющий пользователям писать ещё более короткие файлы сборки deb-пакетов.

Open Build Service

Open Build Service – это место, где каждый может собирать и распространять пакеты для многочисленных дистрибутивов и операционных систем одновременно. Это упрощает процесс, поэтому разработчики могут сосредоточиться на написании кода, а не на нюансах, как Debian и Arch Linux распространяют программное обеспечение.

Вы можете не только использовать Open Build Service для создания программного обеспечения, но и использовать его для поиска программного обеспечения. Для этого зайдите на build.opensuse.org.

Почему openSUSE? Это связано с тем, что Open Build Service начинался как openSUSE Build Service, а openSUSE продолжает размещать публичную версию, открытую для всех, кто ищет пакеты независимо от того, какой дистрибутив они используют (хотя большая часть программного обеспечения разработана с учетом openSUSE).

Debian Packages Search

В дистрибутивах Linux много компьютеров, на которых установлено программное обеспечение, которое они распространяют среди других людей. Отсюда и название (или дистрибутив). Хотя мы обычно обращаемся к этому программному обеспечению с помощью магазина приложений Linux, менеджера пакетов или командной строки, вы также можете получить к ним доступ через веб-браузер.

Учитывая, что для него был создан формат DEB, Debian является крупнейшим дистрибутивом, который упаковывает DEB. Многие альтернативы в конечном итоге основаны на этом. Так что список пакетов Debian – отличное место для поиска программного обеспечения. Вы можете скачать DEB напрямую. Этот метод не рекомендуется, так как эти DEB часто требуют, чтобы у вас уже были установлены другие DEB, но этот запасной вариант здесь, если вам это нужно.

Вы не ограничены сайтом Debian. Вы также можете проверить страницу поиска пакетов Ubuntu или страницу пакетов Linux Mint. Точно так же вы можете найти RPM на странице источников пакетов Fedora.

Установка файлов deb из командной строки

Когда дело доходит до установки пакетов deb из командной строки, в вашем распоряжении несколько инструментов. В следующих разделах мы покажем вам , как использовать , и утилиты для установки пакетов DEB.

Установка файлов deb с помощью  

— это утилита командной строки для установки, обновления, удаления и иного управления пакетами deb в Ubuntu, Debian и связанных дистрибутивах Linux. Он был представлен в Ubuntu 14.04 и сочетает в себе наиболее часто используемые команды из и .

Чтобы установить локальные пакеты deb, вам необходимо указать полный путь к файлу deb. Если файл находится в вашем текущем рабочем каталоге, вместо того, чтобы вводить абсолютный путь, вы можете добавить его перед именем пакета. В противном случае попытается получить и установить пакет из репозиториев Ubuntu.

    Вам будет предложено ввести, чтобы продолжить:

Менеджер пакетов разрешит и установит все зависимости пакетов.

Установка файлов deb с помощью  

это инструмент для установки локальных пакетов deb. По умолчанию он не установлен в Ubuntu, но вы можете установить его с помощью следующей команды:

Чтобы установить пакет deb с типом:

Введите, когда будет предложено, и разрешит и установит пакет deb и все его зависимости за вас.

Установка файлов deb с помощью  

это низкоуровневый менеджер пакетов для систем на базе Debian. Используйте опцию (или ) для установки пакетов deb с .

   В отличие от и , не разрешает зависимости. Если при установке пакетов deb вы получаете какие-либо ошибки зависимостей, вы можете использовать следующую команду для разрешения и установки всех зависимостей пакетов:

Создание deb пакетов

Шаг 1. Подготовка

Давайте создадим для этого примера небольшую программу на Си. Она будет называться hellolosst и будет выводить на экран строку Hello from losst.ru в терминал при запуске. Сначала создайте папку hellolosst и перейдите в неё:

Затем поместите в неё файл с исходным кодом:

Для компиляции программы выполните такую команду:

Затем вы можете её выполнить:

Таким образом, теперь у нас есть программа, которую надо упаковать в deb пакет.

2. Создание манифеста

В каждом deb пакете содержаться не только файлы самой программы, но и файл манифеста, в котором описан пакет, его зависимости и параметры. Этот файл имеет название control и должен находится в папке DEBIAN. Для сборки пакета будем использовать папку package, чтобы файлы программы не путались с исходными файлами и те не попали в пакет. Создайте эти папку:

Прежде чем вы сможете создать этот файл надо узнать несколько вещей. Первым делом надо посмотреть размер файлов программы, поскольку в данном случае файл один, достаточно посмотреть его размер:

Если файлов несколько, то можно удалить исходники и посмотреть общий размер папки с файлами программы. Дальше надо понять от каких пакетов будет зависеть ваша программа. Для этого воспользуйтесь командой objdump:

В данном случае программе необходима только libc. Чтобы посмотреть в каком пакете она находится выполните:

Пакет называется libc6. Затем создайте файл манифеста со следующим содержимым:

Это минимальный набор параметров в файле манифеста. Вот их значение:

Package — имя пакета;

Version — версия программы в пакете, будет использована при обновлении пакета;

Section — категория пакета, позволяет определить зачем он нужен;

Priority — важность пакета, для новых пакетов, которые ни с чем не конфликтуют обычно прописывают optional, кроме того доступны значения required, important или standard;

Depends — от каких пакетов зависит ваш пакет, он не может быть установлен, пока не установлены эти пакеты;

Recommends — необязательные пакеты, но тем не менее они обычно устанавливаются по умолчанию в apt;

Conflicts — пакет не будет установлен, пока в системе присутствуют перечисленные здесь пакеты;

Architecture — архитектура системы, в которой можно установить этот пакет, доступные значения: i386, amd64, all, последнее означает, что архитектура не имеет значения;

Installed-Size — общий размер программы после установки;

Maintainer — указывает кто собрал этот пакет и кто отвечает за его поддержку;

Description — краткое описание пакета.

3. Расположение файлов

Манифест готов. Теперь в папке пакета надо создать структуру папок, аналог того, что есть в корневой файловой системе. В данном случае надо создать папку usr/bin и поместить туда исполняемый файл:

4. Скрипты установки

Несмотря на то, что система установки пакетов очень мощная и позволяет делать многое, некоторые вещи всё же сделать нельзя. Для решения этой проблемы была предусмотрена возможность выполнять скрипты перед установкой пакета и после. Аналогично это работает для удаления пакета — перед и после. Эти скрипты называются preinst, postinst, prerm и postrm. Каждый файл просто содержит набор скриптов, которые надо выполнить. Например:

Разработчики Debian не рекомендуют использовать эти скрипты без крайней надобности, поскольку они дают вам полный контроль над системой пользователя и вы можете случайно что-то повредить. Обычно эти скрипты используются для того чтобы задавать пользователям вопросы и на основе этого генерировать конфигурационные файлы.

5. Сборка и проверка пакета

Осталось собрать настроенный пакет. Для этого используйте такую команду:

Теперь вы знаете как как собрать deb пакет. После завершения сборки можете установить его с помощью apt:

После этого исполняемый файл программы появится в /usr/bin, а сообщение из postinst будет выведено после установки.

Выполнение

Диаграмма, показывающая пример файловой структуры файла .deb

Frhed шестнадцатеричный редактор, отображающий необработанные данные пакета Debian.

До Debian 0.93 пакет состоял из заголовка файла и двух объединенных архивов gzip . Начиная с Debian 0.93, пакет deb реализован в виде архива ar . Этот архив содержит три файла в определенном порядке:

  1. debian-binary — содержит одну строку с номером версии формата пакета. ( для текущих версий Debian).
  2. control archive — tar-архив с именем содержит сценарии сопровождающего и метаинформацию пакета (имя пакета, версия, зависимости и сопровождающий). Поддерживается сжатие архива с помощью gzip или xz . Расширение файла изменится, чтобы указать метод сжатия.
  3. архив данныхархив tar с именем содержит фактические устанавливаемые файлы. Поддерживается сжатие архива с помощью gzip , bzip2 , lzma или xz . Расширение файла изменится, чтобы указать метод сжатия.

Контрольный архив

В состав контрольного архива могут входить следующие файлы:

  • control содержит краткое описание пакета, а также другую информацию, такую ​​как его зависимости.
  • md5sums содержит контрольные суммы MD5 всех файлов в пакете для обнаружения поврежденных или неполных файлов.
  • conffiles перечисляет файлы пакета, которые следует рассматривать как файлы конфигурации. Файлы конфигурации не перезаписываются во время обновления, если не указано иное.
  • preinst , postinst , prerm и postrm — это необязательные сценарии, которые выполняются до или после установки или удаления пакета.
  • config — это необязательный сценарий, поддерживающий механизм конфигурации debconf .
  • shlibs список зависимостей разделяемых библиотек.

Подписанные пакеты

Дистрибутивы на основе Debian поддерживают проверку подписи GPG для подписанных пакетов Debian, но в большинстве (если не во всех) эта функция по умолчанию отключена. Вместо этого пакеты проверяются путем подписания метаданных репозитория (т. Е. ReleaseФайлов). Файлы метаданных, в свою очередь, включают контрольные суммы для файлов репозитория как средство проверки подлинности файлов. В настоящее время существует две разные реализации для подписи отдельных пакетов. Первый выполняется через debsigs/ debsig-verifytoolset, который поддерживается dpkg . Второй — с помощью dpkg-sigпрограммы, которая не поддерживается dpkg , поэтому пакеты необходимо проверять вручную с помощью dpkg-sigпрограммы. Оба формата добавляют новые разделы в архив ar для хранения информации о подписи, но эти форматы несовместимы друг с другом. Ни одна из модификаций формата пакета не указана в официальном руководстве Debian или на странице руководства о формате двоичного пакета.

Устанавливаем архив TAR.GZ в Ubuntu

Установку таких данных можно произвести гораздо проще. Детальнее о разборе инсталляции RPM-пакетов читайте в другой нашей статье, мы же переходим к первому шагу.

Шаг 1: Инсталляция дополнительных инструментов

Для осуществления поставленной задачи вам потребуется всего одна утилита, которую необходимо загрузить еще до начала взаимодействия с архивом. Конечно, в Ubuntu уже есть встроенный компилятор, но наличие утилиты для создания и сборки пакетов позволит переделать архив в отдельный объект, поддерживаемый файловым менеджером. Благодаря этому вы сможете передавать DEB-пакет другим пользователям или удалять программу из компьютера полностью, не оставляя лишних файлов.

  1. Откройте меню и запустите «Терминал».

Введите команду для добавления нужных компонентов.

Для подтверждения добавления потребуется ввести пароль от главной учетной записи.

Выберите вариант Д, чтобы запустить операцию добавления файлов.

Ожидайте завершения процесса, после чего появится строка ввода.

Процесс инсталляции дополнительной утилиты всегда проходит успешно, поэтому с этим шагом не должно возникнуть никаких проблем. Передвигаемся к дальнейшим действиям.

Шаг 2: Распаковка архива с программой

Теперь вам требуется подключить накопитель с сохраненным там архивом или загрузить объект в одну из папок на компьютере. После этого приступайте к выполнению следующей инструкции:

  1. Откройте файловый менеджер и перейдите в папку хранения архива.

Нажмите по нему правой кнопкой мыши и выберите пункт «Свойства».

Узнайте путь к TAR.GZ — он пригодится для осуществления операций в консоли.

Запустите «Терминал» и перейдите в эту папку хранения архива с помощью команды , где user — имя пользователя, а folder — название директории.

Извлеките файлы из директории, вписав tar , где falkon.tar.gz — название архива. Обязательно нужно ввести не только имя, но и .

Вы будете ознакомлены со списком всех данных, которые удалось извлечь. Они будут сохранены в отдельной новой папке, находящейся по этому же пути.

Осталось только собрать все полученные файлы в один DEB-пакет для дальнейшей обычной установки программного обеспечения на компьютер.

Шаг 3: Компилирование DEB-пакета

Во втором шаге вы вытащили файлы из архива и поместили их в обычную директорию, однако это еще не обеспечит нормальное функционирование программы. Его следует собрать, придав логический вид и сделав нужный установщик. Для этого используются стандартные команды в «Терминале».

  1. После процедуры разархивации не закрывайте консоль и переходите сразу в созданную папку через команду , где falkon — название необходимой директории.

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

Если же обе команды оказались нерабочими, нужно самому добавить необходимый скрипт. Последовательно введите в консоль команды:

Во время добавления новых пакетов может оказаться, что в системе не хватает определенных библиотек. Вы увидите соответствующее уведомление в «Терминале». Установить недостающую библиотеку можно командой , где namelib — название требуемого компонента.

По завершении предыдущего шага приступайте к компиляции, вписав команду . Время сборки зависит от объема информации в папке, поэтому не закрывайте консоль и ждите появления уведомления об удачном компилировании.

В последнюю очередь впишите .

Шаг 4: Установка готового пакета

Подробнее: Установка DEB-пакетов в Ubuntu

При попытке установки рассмотренных архивов важно также учитывать, что некоторые из них были собраны специфическими методами. Если приведенная выше процедура не работает, загляните в саму папку распакованного TAR.GZ и отыщите там файл Readme или Install, чтобы ознакомиться с описаниями по установке.. Опишите, что у вас не получилось.
Наши специалисты постараются ответить максимально быстро.

Опишите, что у вас не получилось.
Наши специалисты постараются ответить максимально быстро.

Сборка из исходников

GPG ключ

Первое, что необходимо, это сгенерировать gpg ключ, если его еще нет, так как пакет, при создании, будет подписан этим ключом:

gpg —gen-key

Для того, что бы использовать данный ключ для подписи делаем следующее:

gpg -a —output ~.gnupgYOUR_NAME.gpg —export ‘YOUR NAME’

После чего:

gpg —import ~.gnupgYOUR_NAME.gpg

Все, ключ готов.

Подготовка окружения

Установим необходимые для сборки пакеты:

sudo apt-get install build-essential autoconf automake \
autotools-dev dh-make debhelper devscripts fakeroot \
xutils lintian pbuilder

Получение и подготовка исходников

Разархивируем исходники и переименуем директорию в формат имя-версия, важно, что бы название директории было в нижнем регистре. После этого, на одном уровне с этой директорией необходимо разместить архив с исходниками, например, в формате tar.gz (можно просто создать архив с директорией, которую только что создали). Пример:

Пример:

mkdir -p ~buildmemcached1.4.17cd ~buildmemcached1.4.17wget -c http://www.memcached.orgfilesmemcached-1.4.17.tar.gztar -xzf memcached-1.4.17

Подготовка к сборке

Первое что мы сделаем — подготовим структуру и информацию о нашем пакете.

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

Выберем пока самый простой вариант — s

В нашей директории появилась новая поддиректория — debian, которая содержит файлы, необходимые для дальнейшей сборки. Теперь отредактируем информацию о нашем пакете.

Файл «control»

Добавим зависимости и описание пакета

# Смотрим зависимости
dpkg-depcheck -d .configure

В терминале видем следующее:

Packages needed:
  mime-support
  libsigsegv2:amd64
  gawk
  libevent-dev

Теперь изменим файл debian/control, учитывая эти зависимости и добавим необходимую информацию:

Файл «copyright»

Тут размещаем правовую информацию, в частности, можно разместить текст лицензии, под которой распространяется исходный код программы.

Файл «changelog»

Сборка

dpkg-buildpackage -rfakeroot

Если не было допущено ошибок на предыдущих этапах, то в процессе сборки будет получено приглашение ввести пароль от gpg-ключа, после ввода которого в директории на уровень выше появятся файлы:

  • memcached_1.4.17-1_amd64.changes
  • memcached_1.4.17-1_amd64.deb
  • memcached_1.4.17-1.dsc
  • memcached_1.4.17-1.debian.tar.xz
  • memcached_1.4.17.orig.tar.gz

Как видите, сборка производилась на платформе x86_64. Нужна другая платформа — не проблема.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Adblock
detector