Как указать каталог включения для скрипта настройки - PullRequest
13 голосов
/ 18 октября 2010

У меня на рабочем месте система linux с довольно старыми пакетами и без root-доступа.Я компилирую нужные мне пакеты из источника с --prefix=[somewhere in homedir].Моя проблема в том, что я просто не могу узнать, как убедить configure искать файлы заголовков в определенном каталоге.Источник cpp.Я пробовал с переменными окружения, связанными с g++ и поиском флагов и поиском, но у меня ничего не получилосьМожет кто-нибудь помочь мне решить это?

Ответы [ 4 ]

22 голосов
/ 18 октября 2010

Обычно вы можете передавать дополнительные флаги компилятора внутри CXXFLAGS. Для gcc вы можете указать больше включаемых каталогов с помощью -I/some/dir, например,

$ ./configure CXXFLAGS="-I/some/dir/"

, где /some/dir/ содержит ваши заголовки.

16 голосов
/ 18 октября 2010

Обычный способ сделать это - --with-<feature>=<header directory>.

7 голосов
/ 21 марта 2012
CPPFLAGS = C Preprocessor Flags, these flags will be used for C and C++ compilation.

CFLAGS = C Flags, these flags will be used when compiling C.

CXXFLAGS = C++ Flags, these flags will be used when compiling C++.

Флаг -I указывает дополнительный каталог include, который будет использоваться во время компиляции.

Обычно рекомендуется использовать CPPFLAGS при указании include-каталогов, поэтому вы знаете, что он будет использоваться, даже еслиу проекта есть некоторый исходный код, скомпилированный как C.

Конечно, могут также быть обстоятельства, когда вы хотите, чтобы каталог include использовался только C или C ++, но не обоими.В этом случае вам, очевидно, будет лучше обслужить использование CFLAGS или CXXFLAGS.

4 голосов
/ 22 октября 2011

Лучше использовать CPPFLAGS для указания включаемых каталогов.

./configure CPPFLAGS="-I/your/whatever/includedir"
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...