Пользователям Linux обычно легко найти и установить программное обеспечение. Практически в каждом дистрибутиве есть репозиторий программного обеспечения с красивым графическим интерфейсом. Для установки программы обычно достаточно найти ее и нажать кнопку «Установить». Если программное обеспечение недоступно в репозитории, обычно вы можете найти где-нибудь в Интернете предварительно скомпилированные двоичные файлы. Затем для их установки достаточно запустить apt-get
, yum
или аналогичный (в зависимости от того, какой дистрибутив Linux вы используете). Однако иногда у вас нет другого выбора, кроме как скомпилировать программы Linux из исходного кода самостоятельно, особенно если вам нужна новейшая версия программы, для которой не существует предварительно скомпилированных двоичных файлов.
Хотите научиться компилировать программы Linux из исходного кода? Тогда читайте дальше!
По какой-то причине перспектива компилировать программы для Linux из исходных кодов пугает многих пользователей Linux — даже тех, кто использует операционную систему уже много лет. Но это не должно их пугать. Установка программного обеспечения из файлов исходного кода в большинстве случаев является простой операцией. А если вы изучите основные приемы, то вскоре сможете диагностировать проблемы, возникающие в тех случаях, когда дела идут не так, как планировалось.
Читайте также: Как использовать компилятор G++ в Linux
Шаги, необходимые для компиляции программ Linux из исходного кода
Чтобы скомпилировать программы Linux из исходного кода, используйте четырехэтапный процесс:
- Распаковать исходный код
- Устранение зависимостей
- Скомпилируйте
- Установите
1. Распаковка исходного кода
В этом примере мы собираемся скомпилировать файл База данных SQLite . Если вы хотите следовать инструкциям, скачайте последний архив исходного кода (файл .tar.gz
).
Арт-архив – это просто сжатый файл, очень похожий на файл .zip
. Он будет иметь расширение tar.gz
или .tgz
. Для работы с его содержимым необходимо сначала извлечь его с помощью следующей команды:
tar -xzvfContents
Шаги, необходимые для компиляции программ Linux из исходного кода
code>(илиtar.bz2
). Используйте следующую команду, если вы работаете с файлом tar.bz
:
tar -xjvf filename.tar.bz
Этот процесс создает каталог с тем же именем, что и файл.
Читайте также: 5 способов ускорить компиляцию в Gentoo Linux
2. Разрешение зависимостей
Войдите в этот новый каталог, используя cd directory name
, а затем, как sudo
(или su
во многих других дистрибутивах Linux), выполните ./configure
команда:
cd directory_name sudo ./configure
Команда ./configure
проверяет, установлено ли все программное обеспечение, от которого зависит данная конкретная программа, например соответствующий компилятор. Префикс ./
указывает Linux найти файл configure
в текущем каталоге и выполнить его. Обратите внимание, что иногда configure
не является именем файла, который разрешает эти зависимости. Если при запуске configure
возникает ошибка, найдите в каталоге файл «README», «INSTALL» или аналогичный. Это должно сказать вам, какой файл отвечает за этот шаг. На самом деле, перед компиляцией любой программы рекомендуется прочитать все включенные файлы.
Если все пройдет хорошо, ошибок вы не увидите. Нам здесь повезло. Однако обычно вам чего-то не хватает. Просто просмотрите выходные данные и установите все недостающие зависимости с помощью менеджера пакетов. Запускайте ./configure
еще раз, пока ошибок больше не будет.
3. Подборка
После устранения всех зависимостей необходимо скомпилировать программу. Для этого используйте команду make
:
sudo make
Этот процесс может занять несколько минут, а для некоторых программ — значительно дольше. Прежде чем продолжить, убедитесь, что выходные данные не содержат ошибок.
4. Установка
На этом этапе вы скомпилировали двоичные файлы, но теперь вам нужно их устано
2. Разрешение зависимостей
nstall. На этом этапе все двоичные файлы перемещаются в правильное место в вашей системе, чтобы ваша программа была готова к использованию:sudo make install
Если вы следовали инструкциям, выполните sqlite3
в командной строке терминала, и если база данных установлена правильно, вы должны увидеть приглашение базы данных sqlite3.
Поздравляем! Но что, если вы захотите удалить только что установленную программу? Это просто. Просто зайдите в каталог, из которого вы установили программу, и запустите:
sudo make uninstall
Следует:
sudo make clean
Заключение
Таким образом легко установить большинство программ из исходного кода, но для некоторых потребуются действия, немного отличающиеся от показанных здесь. Например, вам может потребоваться использовать cmake
вместо make
. Всегда читайте прилагаемые файлы «README», «INSTALL» или другую документацию, предоставленную разработчиками, и вы не ошибетесь.