diff options
Diffstat (limited to 'LINUX/Сборка программ из исходного кода в Linux.md')
| -rw-r--r-- | LINUX/Сборка программ из исходного кода в Linux.md | 42 |
1 files changed, 42 insertions, 0 deletions
diff --git a/LINUX/Сборка программ из исходного кода в Linux.md b/LINUX/Сборка программ из исходного кода в Linux.md new file mode 100644 index 0000000..9b11cd1 --- /dev/null +++ b/LINUX/Сборка программ из исходного кода в Linux.md @@ -0,0 +1,42 @@ + +Иногда, случаются ситуации когда нам нужен какой-то софт, но для него нет пакета, или же версия пакета сильно отстает. Тут может пригодиться умение установки из исходников. + +Для большинства приложений процесс установки из исходного кода состоит из шагов, которые мы разберём на примере популярного инструмента для мониторинга процессов — **htop**. + + 1️⃣ **Скачиваем исходный код** +Для этого найдите архив с исходниками на офциальном сайте или репозитории GitHub. Для нашего примера, скачаем архив исходников htop: + +`wget https://github.com/htop-dev/htop/archive/refs/tags/3.2.2.tar.gz + +2️⃣ **Распаковываем архив и переходим в каталог** +`tar -xvzf 3.2.2.tar.gz +`cd htop-3.2.2 + +3️⃣ **Устанавливаем зависимости** +Большинство программ требуют компилятора и библиотек. Убедитесь, что у вас установлен набор инструментов для сборки: +`sudo apt update +`sudo apt install build-essential libncursesw5-dev + +**4️⃣ Конфигурируем сборку** +Подготовьте сборку для вашей системы. Это этап проверки зависимостей и настройки параметров: +`./autogen.sh +`./configure + +Если программа не поддерживает autogen.sh, обычно достаточно только ./configure. Используется для проверки окружения и создания Makefile, который нужен для компиляции. + +5️⃣ **Компилируем программу** +`make + +Процесс может занять некоторое время в зависимости от мощности системы. + +**6️⃣ Устанавливаем программу** +Завершаем установку в системный каталог: +`sudo make install + +7️⃣ **Проверяем установку** +Для проверки, что мы установили все корректно, проверим версию: +`htop --version + +➡️ Если вам нужно выполнить установку в пользовательский каталог, то можем указать префикс конфигурации: +`./configure --prefix=$HOME/local + |
