Домашний сервер

Основное руководство по компиляции пакетов из исходного кода в Ubuntu

Основное руководство по компиляции пакетов из исходного кода в Ubuntu

Слово «компиляция» пугает многих начинающих или даже промежуточных пользователей Linux. На самом деле, компилирование пакетов программ в Ubuntu не так сложно. В этом посте мы объясним, что вам нужно знать о компиляции пакетов из исходного кода в Ubuntu. В некоторых руководствах по htpcBeginner (установка CrystalHD, XBMC и т.д. ) Рассказывается о компиляции пакетов из исходного кода в Ubuntu. У нас есть больше руководств о том, что также потребует компиляции пакетов. Поэтому мы подумали, что пришло время представить новым пользователям Linux очень простое введение в компиляцию пакетов из исходного кода в Ubuntu. Так что вот так.

Основное руководство по компиляции пакетов из исходного кода в Ubuntu

Зачем вам нужно компилировать пакеты?

Компиляция – это процесс обработки исходного кода (программных кодов), адаптации их к вашей среде (системе / ОС) и преобразования их в устанавливаемые файлы. Пакеты, доступные в репозиториях Ubuntu или.debфайлы – это предварительно скомпилированные пакеты, которые вы можете установить с помощью быстрой команды. Но во многих случаях некоторые из пакетов программного обеспечения, доступных в хранилище, являются более старыми версиями. Кроме того, некоторые пакеты даже не доступны в репозиториях. Так что, если вам нужны самые последние и лучшие версии, вы можете скачать последний исходный код, скомпилировать и установить его. Хотя этот процесс дольше, чем установка из репозиториев, компиляция делает это программное обеспечение наиболее гибким для вашей системы / среды. Когда вы знаете, как это сделать, это будет чрезвычайно простой процесс, поскольку в большинстве случаев все, что вам нужно сделать, это выполнить последовательность из нескольких команд.

Предварительные условия для компиляции пакетов из исходного кода в Ubuntu

Типичный пользователь не компилирует пакеты, поэтому Ubuntu решила не включать предварительные условия для компиляции пакетов в дистрибутив. Следующая команда устанавливает все пакеты, необходимые для компиляции пакетов из Source в Ubuntu:

sudo apt-get install autoconf g++ subversion linux-source linux-headers-`uname -r` build-essential tofrodos git-core subversion dos2unix make gcc automake cmake checkinstall git-core dpkg-dev fakeroot pbuilder dh-make debhelper devscripts patchutils quilt git-buildpackage pristine-tar git yasm checkinstall cvs mercurial

Это касается наиболее распространенных пакетов, необходимых для компиляции загруженных пакетов, в том числе из SVN и Git.

Загрузка пакетов

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

Для tar.gzфайлов:

tar -xzvf tarballname.tar.gz

Для tar.gz.bz2файлов:

tar -xjvf tarballname.tar.bz2

Если исходный код взят из SVN или Git, разработчики предоставят инструкции о том, как их получить. Обычно для Git используется git cloneкоманда. В наших руководствах мы четко указываем инструкции по загрузке из SVN или Git.

Рекомендуемые руководства:

Компиляция пакетов из исходного кода в Ubuntu

Процесс компиляции включает в себя только 3 шага: настроить, создать и установить. Первый шаг configure. Большинство загруженных источников ( tarфайлов) уже будут иметь configure. Для настройки файлов компиляции выполните следующую команду:

./configure

Некоторые исходные коды, загруженные из Git или SVN, могут не иметь configure. Они, как правило, включают в себя autogenсценарий, который опирается на automakeи autoconfпрограммах и автоматически строить конфигурационные файлы и запускать ./configureкоманды.

./autogen.sh

Следующим шагом является makeустановка файлов установки путем компиляции исходного кода с помощью следующей команды:

make

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

make -j4

Последний шаг – установить файлы, сгенерированные makeкомандой. В предыдущем методе установки скомпилированных файлов использовалась следующая команда:

sudo make install

Эта команда помещает установочные файлы, /usr/local/binи вы сможете запустить его оттуда. Вы все еще можете найти приведенную выше команду в некоторых руководствах. В настоящее время рекомендуемый способ установки скомпилированных пакетов – использовать checkinstallкоманду:

sudo checkinstall

В случае checkinstallсбоя (из-за некоторых известных ошибок) вам может потребоваться выполнить следующую команду:

sudo checkinstall --fstrans=0

Эта команда проведет вас через серию шагов. Если каталог пакета документации недоступен, вам будет предложено создать его ( doc-pack). Затем вам будет предложено описание для пакета. Наконец, будет отображена сводка параметров, которые будут использоваться для создания пакета, как показано в примере ниже:

Основное руководство по компиляции пакетов из исходного кода в Ubuntu

Проверьте параметры установки пакета сборки

Скомпилированный пакет будет установлен и появится в менеджере пакетов (например, Synaptic) для более простого и легкого удаления позже. Кроме того, .debбудет создан пакет, который можно использовать для установки пакета на других аналогичных компьютерах или на том же компьютере в будущем без повторной компиляции. Вот и все, вы закончили компиляцию пакетов из исходного кода в Ubuntu.

Рекомендуемые руководства:

Исправление проблем

Много раз configureскрипт может остановиться с ошибками. Обычно это происходит из-за отсутствия зависимостей. Прочтите сообщение об ошибке, чтобы узнать, нужно ли устанавливать конкретные пакеты для компилируемого вами пакета. Установите эти пакеты и перенастройте их.

Если во время makeпроцесса произошла ошибка компиляции, вы можете перезапустить after cleaning:

sudo make clean

Uninstalling Compiled Packages

The way you uninstall compiled packages depends on your method of installation. If you used checkinstallВы можете удалить пакет из менеджера пакетов, такого как Synaptic. Или вы можете использовать одну из следующих команд:

sudo apt-get remove PackageName

или

sudo dpkg -r PackageName

Если вы использовали sudo make install, перейдите в папку с исходным кодом (где находятся скомпилированные файлы) и выполните следующую команду:

sudo make uninstall

Обновление скомпилированных пакетов

Если вы установили из tarили из SVN, вам в основном нужно удалить ранее установленные пакеты, загрузить последнюю версию исходного кода, скомпилировать и установить последнюю версию. Если вы установили из Git, это по сути тот же процесс, но немного проще. Перейдите в папку с исходным кодом и введите следующие команды:

make distclean git pull

Первая команда очищает ранее скомпилированные файлы и git pullсинхронизирует их с репозиторием Git и обновляет все файлы, которые изменились с последней версии. Затем перейдите к обычному процессу настройки, создания и установки.

Легко не так ли? Существует гораздо более продвинутые способы компиляции пакетов из исходного кода в Ubuntu, но, надеюсь, это дало вам быстрый пример, которого должно быть достаточно для поддержки типичного домашнего сервера Linux.

Источник записи: https://www.smarthomebeginner.com

Похожие записи
Домашний сервер

Изменить интервал синхронизации времени Windows?

Домашний сервер

План новичка: полное руководство по установке Monit

Домашний сервер

Google OAuth Tutorial для Docker и Traefik - аутентификация для сервисов

Домашний сервер

Установите Guacamole на Docker - VNC, SSH, SFTP и RDP, как босс!

Sign up for our Newsletter and
stay informed
[mc4wp_form id="14"]

Политика конфиденциальности

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

Принять