Как добавить путь включения по умолчанию для GCC в Linux?

Я бы хотел, чтобы gcc включал файлы из $HOME/include в дополнение к обычным каталогам include, но, похоже, нет аналога $LD_LIBRARY_PATH.

Я знаю, что могу просто добавить каталог include в командной строке при компиляции (или в make файле), но мне бы очень хотелось использовать здесь универсальный подход, как в случае с библиотекой.

Ответ 1

Попробуйте установить C_INCLUDE_PATH (для файлов заголовков C) или CPLUS_INCLUDE_PATH (для файлов заголовков С++).

Как отметил Циро, CPATH установит путь как для C, так и для С++.

Подробнее здесь.

Ответ 2

Создайте псевдоним для gcc с вашим любимым включением.

alias mygcc='gcc -I /whatever/'

Ответ 3

Вот ссылка на руководство GCC 4.8.1, где документируются переменные среды C_INCLUDE_PATH и CPLUS_INCLUDE_PATH.

Ответ 4

Файл спецификации gcc может выполнять задание, однако все пользователи на машине будут затронуты.

Смотрите здесь

Ответ 5

просто примечание: CPLUS_INCLUDE_PATH и C_INCLUDE_PATH не являются эквивалентом LD_LIBRARY_PATH. LD_LIBRARY_PATH обслуживает ld (динамический компоновщик во время выполнения), тогда как эквивалентом первых двух, которые обслуживают ваш компилятор C/C++ с расположением библиотек, является LIBRARY_PATH.