Если вы будете компилировать свое собственное программное обеспечение, то в конечном итоге вы контролируете место установки. По соглашению, программное обеспечение, скомпилированное и установленное вручную (не через менеджер пакетов, например, apt, yum, pacman), устанавливается в /usr/local
. Некоторые пакеты (программы) создают подкаталог /usr/local
для хранения всех своих соответствующих файлов, таких как /usr/local/openssl
. Другие пакеты установят необходимые файлы в существующие каталоги, такие как /usr/local/sbin
и /usr/local/etc
. Это просто места по умолчанию и могут быть изменены во время компиляции.
При компиляции программного обеспечения местоположение установки можно указать с помощью --prefix=
параметра при запуске ./configure
. Настоятельно рекомендуется проверить все доступные параметры для вашего пакета, запустив его $ ./configure --help | less
. Кроме того, просмотр документов INSTALL и README, входящих в комплект поставки, является хорошей идеей. Как правило, они включают инструкции по установке и информацию о зависимостях, характерную для данного пакета.
Следует также отметить, что, хотя вы можете хранить программное обеспечение где угодно, согласно FHS , исходный код для локально установленного программного обеспечения должен храниться в /usr/local/src
Стандартизации, где вы храните свои исходные деревья, что позволит вам легко найти дерево, если вам нужно скопировать запас файл конфигурации или бинарный. Даже если некоторые пакеты используют его, ваш исходный код не должен храниться в том /usr/src
виде, который предназначен для системного программного обеспечения, такого как ядро.
Наконец, вам нужно убедиться, что ваше место установки включено в ваш $PATH
. Если вы решили установить свой пакет, /opt
но его нет в вашей $PATH
оболочке, он не найдет исполняемые файлы, и вам придется использовать абсолютный путь для вызова ваших программ. Вот некоторые отличные обсуждения от AU о настройке вашего$PATH
Дополнительное чтение: man hier
/usr/local
) ИЛИ о том, как создать свой собственный пакет для него.