Одной из самых сложных адаптаций для пользователей, переходящих с Windows на Linux, является мысль о том, что не каждое программное обеспечение, которое вы хотите установить, готово для вас. В отличие от пользователей Windows, которые (в большинстве случаев) получают программное обеспечение, предварительно упакованное в установщик EXE или ZIP-файл, пользователям Linux часто приходится компилировать свои собственные пакеты программного обеспечения.
Если вы хотите знать, как компилировать пакеты программного обеспечения в Linux, вам необходимо выполнить несколько шагов. Вам нужно будет загрузить исходный код, запустить команду configure, установить все необходимые пакеты зависимостей, а затем запустить команду make, чтобы начать компиляцию пакета. Вот как все это сделать в операционной системе на базе Linux.
Загрузка исходных файлов
Прежде чем приступить к созданию новых пакетов программного обеспечения, вам понадобится исходный код. Это может быть пакет, который вы разработали самостоятельно, и в этом случае у вас уже должен быть доступ к исходному коду.
Однако более вероятно, что вы пытаетесь скомпилировать пакет программного обеспечения для Linux от другого разработчика. Популярные сайты обмена кодом, такие как Гитхаб, позволяют указать просмотреть и загрузить исходный код для пакетов, которые затем можно скомпилировать. Вы можете использовать GIT, популярную систему контроля версий, для загрузки исходных файлов на свой компьютер.
Вы также можете напрямую загрузить исходный код из проектов с открытым исходным кодом, таких как VLC. Обычно они имеют формат сжатый формат файла, например TAR.GZ, который можно извлечь на терминале с помощью команды tar . Например, выполнение команды tar -xzvf source.tar.gz приведет к извлечению tar-файла с именем source.tar.gz .
После того как исходный код будет доступен и извлечен на вашем ПК с Linux, вы сможете перейти к следующему этапу подготовки, прежде чем приступить к компиляции пакета.
Установка Build-Essential в Linux
Инструменты и программное обеспечение, содержащиеся в пакете build-essential , необходимы для любого типа программного обеспечения, компилируемого в операционных системах Linux, независимо от языка программирования вашего исходного кода.
В качестве основного пакета build-essential (или пакеты с аналогичным названием) должны быть доступны в репозитории программного обеспечения вашего дистрибутива Linux. Эквивалент build-essential в дистрибутивах Arch Linux называется base-devel и включает в себя множество тех же инструментов..
Инструкции по установке build-essential также могут различаться в зависимости от вашего дистрибутива Linux. Например, в операционных системах на базе Ubuntu и Debian вы можете установить build-essential, открыв окно терминала и набрав sudo apt install build-essential .
При установке build-essential также будут установлены его зависимости, например пакет g++ . После завершения этого процесса вы можете перейти к настройке исходного пакета Linux перед его компиляцией.
Запустите команду настройки
Исходный код основных пакетов обычно содержит сценарий configure . Запуск этого сценария проверит ваш дистрибутив Linux на наличие необходимых пакетов, которые ваш исходный код должен правильно скомпилировать.
Чтобы запустить сценарий настройки, введите папку для извлеченного исходного кода с помощью команды cd . Отсюда введите ./configure в терминал и нажмите Enter, чтобы запустить его.
Если сценарий настройки обнаружит отсутствующий пакет, он проинформирует вас о том, что делать, в конце сценария. Например, перед компиляцией медиаплеера VLC показанный выше сценарий настройки обнаружил, что язык программирования Lua не установлен.
В некоторых случаях вы все равно можете скомпилировать и настроить пакеты программного обеспечения, даже если сценарий настройки обнаружил отсутствующий пакет или функцию. Сценарий настройки для VLC (показанный выше) предлагает решение проблемы отсутствующих пакетов языка программирования Lua, предлагая вам запустить его еще раз с флагом –disable-lua , чтобы обойти его.
Вам необходимо будет установить все недостающие пакеты, обнаруженные сценарием configure, или использовать любые предложенные флаги отключения, чтобы обойти эти ошибки, прежде чем продолжить.
Если сценарий настройки завершился без ошибок (или с незначительными ошибками), будет создан настроенный makefile для вашего пакета. При этом создаются инструкции для компиляции вашего пакета, что позволяет вам перейти к заключительному этапу компиляции программного обеспечения.
Установить отсутствующие пакеты зависимостей
Сценарий настройки помогает определить все пакеты, которые требуются вашему дистрибутиву Linux для правильной компиляции и установки нового пакета программного обеспечения..
Они могут быть четко идентифицированы по сообщению об ошибке сценария настройки или в процессе запуска этого сценария. Если сообщение об ошибке не ясно, прокрутите историю своего терминала назад, чтобы попытаться определить недостающий пакет.
Как только вы узнаете, какой пакет отсутствует, воспользуйтесь установщиком пакета вашего дистрибутива Linux, чтобы установить его. Например, в операционных системах на базе Ubuntu и Debian запуск sudo apt install package-name приведет к установке пакета.
Установка всех недостающих зависимостей — это последний этап, который необходимо выполнить, прежде чем вы сможете приступить к компиляции и установке нового пакета программного обеспечения. Завершив этот процесс, вы готовы приступить к компиляции.
Как скомпилировать в Linux
Пакет build-essential содержит make , автоматический инструмент, используемый для компиляции исходного кода в программное обеспечение, которое можно запускать на своем ПК. Он использует файл makefile , настроенный и созданный предыдущей командой configure , который содержит конкретные инструкции, необходимые для компиляции вашего пакета.
Чтобы начать компиляцию исходного кода, откройте терминал и используйте команду cd , чтобы войти в правильную папку. Когда вы будете готовы, введите make , чтобы начать компиляцию пакета.
Это займет некоторое время, в зависимости от размера пакета и доступных системных ресурсов. Если после компиляции пакета программного обеспечения ошибок не возникло, вы можете установить его.
Для этого введите в терминале sudo make install . Пакет будет установлен на ваш компьютер с Linux и готов к открытию и использованию, как и любое другое программное обеспечение.
Установка нового программного обеспечения в Linux
Знание того, как компилировать пакеты программного обеспечения в Linux, поможет вам установить менее известное программное обеспечение. Основные операционные системы, такие как Ubuntu и Devian, имеют большие репозитории программного обеспечения, доступные пользователям, поэтому, если вы не хотите компилировать свое программное обеспечение, попробуйте вместо этого найти и установить новое программное обеспечение с помощью менеджера пакетов..
Если вы переходите с Windows, вы также можете установить программное обеспечение Windows в Linux продолжать использовать свои любимые приложения только для Windows.
.