Ответ 1
Попробуйте установить C_INCLUDE_PATH
(для файлов заголовков C) или CPLUS_INCLUDE_PATH
(для файлов заголовков С++).
Как отметил Циро, CPATH
установит путь как для C, так и для С++.
Подробнее здесь.
Я бы хотел, чтобы gcc включал файлы из $HOME/include
в дополнение к обычным каталогам include, но, похоже, нет аналога $LD_LIBRARY_PATH
.
Я знаю, что могу просто добавить каталог include в командной строке при компиляции (или в make файле), но мне бы очень хотелось использовать здесь универсальный подход, как в случае с библиотекой.
Попробуйте установить C_INCLUDE_PATH
(для файлов заголовков C) или CPLUS_INCLUDE_PATH
(для файлов заголовков С++).
Как отметил Циро, CPATH
установит путь как для C, так и для С++.
Подробнее здесь.
Создайте псевдоним для gcc с вашим любимым включением.
alias mygcc='gcc -I /whatever/'
Вот ссылка на руководство GCC 4.8.1, где документируются переменные среды C_INCLUDE_PATH и CPLUS_INCLUDE_PATH.
Файл спецификации gcc может выполнять задание, однако все пользователи на машине будут затронуты.
Смотрите здесь
просто примечание: CPLUS_INCLUDE_PATH
и C_INCLUDE_PATH
не являются эквивалентом LD_LIBRARY_PATH
. LD_LIBRARY_PATH
обслуживает ld
(динамический компоновщик во время выполнения), тогда как эквивалентом первых двух, которые обслуживают ваш компилятор C/C++ с расположением библиотек, является LIBRARY_PATH
.