Я знаю, что существует своего рода стандартная серия команд для компиляции и установки пакетов, которые поставляются только как исходные. Что это?
Обычно это так.
./configure
Это (когда выполняется в каталоге, где находится ваш исходный код) создает Makefile с правилами, которые будут использоваться для сборки программы. Здесь вы можете изменить поведение компиляции (то есть скомпилировать программу с параметрами, не заданными по умолчанию).
make
Программа будет построена по правилам, указанным в Makefile.
make install
Обычно это выполняется от имени пользователя root (или с использованием sudo make install
чтобы не входить в систему как root) и устанавливает скомпилированную программу в вашу систему.
[РЕДАКТИРОВАТЬ]
Так как Михай Лимбасан Обратите внимание, что обычно вы можете передать параметр --prefix в ./configure, чтобы определить, где будет установлена программа. Если у вас есть необходимые разрешения в целевом каталоге, вам даже не нужно запускать make install с помощью sudo (или от имени пользователя root).
Например, если вы сделаете
--prefix=/home/username/whatever/directory/here
вы должны иметь возможность установить эту программу без прав root. Я должен отметить, что это ограничит использование программы теми, у кого есть привилегии выполнения в указанном вами каталоге. Поэтому, если вам нужна общесистемная установка, вам, вероятно, следует использовать решение по умолчанию (запуск make install с правами root).
Михай также напомнил, что вы можете удалить установленную программу, запустив
make uninstall
(опять же, как root или с помощью sudo, если вы использовали параметры по умолчанию в configure), но для этого требуется, чтобы вы сохраняли каталог сборки на месте после установки программы. То есть не рекомендуется удалять исходный каталог скомпилированной программы, чтобы вы могли удалить ее позже.
Я получаю исходный код приложения. Первое, что я делаю, это читаю довольно стандартный файл README / INSTALL. Обычно они говорят мне, что мне нужно делать. Они сообщают мне, какие зависимости я хочу установить перед компиляцией, чтобы получить все нужные мне функции. Они говорят мне, что мне нужно сделать, чтобы обеспечить установку.
less INSTALL
less README
Найдите 3-5 минут и прочтите эти документы, они могут сэкономить вам много времени.
Эти шаги предполагают, что пакет компилируется правильно, все зависимости соблюдены, а цель «проверки» существует и проходит.
для вашего ./configure вы можете сначала использовать ./configure --help, так как это покажет параметры конфигурации, которые можно передать в configure. Это будет особенно полезно, если у вас возникают проблемы с компиляцией или вы не хотите, чтобы пакет предоставлял какую-либо поддержку.
make check также иногда заменяется на make test. Я бы рекомендовал попробовать их на любом программном обеспечении, которое вы компилируете перед установкой.