что делать дальше после ручной установки программы в Linux

293
宇宙人

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

Например, я сделаю следующее для установки программы:

./configure --prefix=/myDir/bin make make install 

После установки я получаю некоторые файлы, созданные в /myDir/bin, например:

bin/ include/ lib/ lib64/ libexec/ share/ 

У меня вопрос после установки, что мне делать?

С некоторыми поисками, я считаю, что многие о наборе LD_LIBRARY_PATH, LIBRARY_PATH, PKG_CONFIG_PATH... Но я не совсем ясно, о функциональности этих параметров.

Какова полная настройка и конфигурация после установки?

1

1 ответ на вопрос

0
lemonsqueeze

«Полная настройка и настройка после make install» будет зависеть от того, какое программное обеспечение вы устанавливаете. Я бы начал с общих / самых важных вещей, а затем добавил их по мере необходимости:

  • PATH: определяет, где искать программы. Если вы хотите, чтобы ваша сессия находила и использовала те, которые вы установили, вам нужно что-то вроде: export PATH="/myDir/bin:$PATH"в вашем профиле. В противном случае вам придется звонить, скажем, /myDir/bin/lsкаждый раз.

  • LD_LIBRARY_PATH: используется для управления тем, какие общие библиотеки ( .soфайлы) используются при запуске динамически связанных исполняемых файлов. Если не установлено, будут использоваться системные библиотеки. Если установлено, каталоги, на которые он указывает, будут сначала найдены. Если у вас установлены .soфайлы, вам нужно настроить их так, чтобы ваши программы находили их:
    export LD_LIBRARY_PATH=/myDir/lib

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

    #!/bin/bash export LD_LIBRARY_PATH=/myDir/lib exec /myDir/bin/firefox "$@" 

Компиляция вещи:

  • CFLAGS/ CPPFLAGS: используется gcc / g ++ при компиляции исходного кода. Установите его, чтобы указать, где находятся ваши заголовки:export CFLAGS=-I/myDir/include

  • LDFLAGS: используется gcc при линковке. Установите его, чтобы указать, где находятся ваши библиотеки:
    export LDFLAGS=-L/myDir/lib

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

  • PKG_CONFIG_PATH: используется pkg-configдля поиска своих файлов. Обычно это выглядит под /usr/share/pkgconfigдля .pcфайлов. Если вы собираетесь собирать больше программ, которые нуждаются в ваших библиотеках, и есть вещи, которые /myDir/share/pkgconfigвы захотите установить и для этой библиотеки .

Остальное можно выяснить по мере необходимости: man super_duper_prgне работает? мужской док расскажет вам о MANPATH.

Спасибо за ваш повтор, в настоящее время я встречаю такой случай, когда мне нужно скомпилировать и установить `git` из исходного кода. Оказывается, для этого нужно предварительно установить zlib. Поэтому я перехожу к установке `zlib` в` / myDir` и и `/ myDir` в` LD_LIBRARY_PATH`. Но когда я `делаю git`, он все равно показывает, что не может найти` zlib.h`. Я знаю, что одним из решений является `настройка` с` --with-zlib`, есть ли способ избежать этого с помощью просто установки? 宇宙人 10 лет назад 0
Да, вам нужно установить переменные `CFLAGS` и` LDFLAGS`. Я отредактировал свой ответ. lemonsqueeze 10 лет назад 0

Похожие вопросы