#c #makefile
Вопрос:
Я пытаюсь понять следующую строку в Makefile.в файле:
CXXFLAGS = -O3 -DNDEBUG -std=c 11 -Wno-deprecated-declarations -Isrc -I @mathinc@
Я знаю -I
, что флаг добавляет каталог в список мест, где компилятор будет искать включенные файлы, но что это @mathinc@
значит?
Ответ №1:
Обратите внимание, что файл вызывается Makefile.in
— это означает, что он вводится в другой файл (или преобразование).
Короче говоря, configure
запустится и определит, скажем, где находятся соответствующие включаемые файлы @mathinc
— вероятно, для некоторых математических заголовков. configure
После запуска он будет выдавать (без завершения) на основе того, что он находит. Makefile
.in
Проверьте этот файл.
configure
скрипты создаются в системе с именем autoconf
, которая, как и все системы сборки, имеет своих поклонников и ненавистников. Есть несколько достойных руководств, например, это.