Сценарий настройки — это исполняемый сценарий, предназначенный для помощи в разработке программы , которую можно запускать на большом количестве различных компьютеров. Он сопоставляет библиотеки на компьютере пользователя с теми, которые требуются программе перед ее компиляцией из исходного кода .
Обычно все сценарии настройки имеют имена configure
. Обычно скрипты настройки пишутся для оболочки Bourne , но они могут быть написаны для выполнения в любой желаемой оболочке.
Получение программного обеспечения непосредственно из исходного кода является обычной процедурой на компьютерах Unix и обычно включает следующие три шага: настройку make-файла , компиляцию кода и, наконец, установку исполняемого файла в стандартные места. Сценарий настройки выполняет первый из этих шагов. Использование сценариев настройки — это автоматизированный метод создания make-файлов перед компиляцией для адаптации программного обеспечения к системе, в которой исполняемый файл должен быть скомпилирован и запущен. Окончательный исполняемый файл чаще всего получается путем выполнения следующих команд в оболочке, которая в данный момент указывает на каталог, содержащий исходный код:
./настроитьделатьсделать установку
Необходимо печатать, ./configure
а не просто configure
указывать оболочке, что сценарий находится в текущем каталоге. Это связано с тем, что в целях безопасности конфигурации Unix не выполняют поиск исполняемых файлов в текущем каталоге. Таким образом, чтобы выполнять программы в этом каталоге, необходимо явно указать их местоположение. [1]
По завершении configure
распечатывает отчет в формате config.log
. При запуске ./configure --help
выдается список аргументов командной строки для включения или отключения дополнительных функций, таких как:
./configure --libs = "-lmpfr -lgmp"
./configure --prefix = /home/user/local
Первая строка включает библиотеки mpfr
и gmp
. Вторая строка сообщает make
об установке финальной версии в формате /home/user/local
.
Часто прилагается документ с инструкциями. Это может быть полезно в случае configure
неудачи. Этот файл обычно называется INSTALL
.
Разработчики программного обеспечения упрощают задачу кроссплатформенной разработки программного обеспечения с помощью GNU Autotools . [2] Эти сценарии запрашивают у системы, в которой они выполняются, настройки среды, архитектуру платформы, а также наличие и расположение необходимых зависимостей сборки и времени выполнения. Они хранят собранную информацию в configure.ac
или уже устаревшем виде, configure.in
чтобы ее можно было прочитать configure
на этапе установки.
В новой разработке проверка зависимостей библиотек в значительной степени выполнялась с использованием pkg-config через макрос m4 PKG_CHECK_MODULES. До того, как pkg-config приобрел популярность, были созданы отдельные макросы m4 для поиска файлов, которые, как известно, включены в дистрибутив зависевших библиотек.
Первую программу со сценарием настройки создал Ларри Уолл в 1984 году. Сценарий был написан вручную и при выполнении вызывал шутливые комментарии. Он до сих пор сохраняется как часть системы сборки программы trn . [3]
С тех пор выросла экосистема программ, позволяющих максимально автоматизировать создание сценариев настройки, наиболее распространенной из которых является система GNU Autoconf .