Включать заголовочные файлы с помощью параметра командной строки?

Действительно ли возможно указать дополнительные заголовочные файлы для включения из командной строки (использующий GCC 4 / C++)?

Или есть ли какой-либо другой способ, кроме которого могут быть включены файлы с #include?

Фон: я пытаюсь скомпилировать большую кодовую базу на своем собственном ПК. Код обычно компилируется в кластере со сложной системой сборки (SoftRelTools кто-либо?), который переплетен с операционной системой, такой, что фактически невозможно установить его где-то в другом месте (буквально сотни make-файлов и сценариев оболочки и трудно кодированных путей к сетевым дискам). Однако фактический код довольно прост, и компилирует прекрасный, НО он отсутствует, много из включает (главным образом а-ля"include <vector>"и"include <math.h>"). Я предполагаю, что система сборки обычно заботится об этом, но я должен пройти код и добавить включение вручную, которого я избежал бы.

66
задан jww 26 September 2015 в 21:04
поделиться

3 ответа

Я нашел параметр -include. Это то, что вы хотите?

-include file

Обрабатывать файл, как если бы "#include" file "" появилось в первой строке первичный исходный файл. Тем не менее первый каталог, в котором выполняется поиск файла, рабочий каталог препроцессора вместо каталога, содержащего основной исходный файл. Если не найден там он ищется в остаток от "#include" ... "" поисковая цепочка в обычном режиме.

Если указано несколько параметров -include, файлы включаются в порядок их появления в командной строке.

76
ответ дан 24 November 2019 в 15:02
поделиться

Согласно документации gcc, параметр командной строки «-include file» выполняет эту работу.

9
ответ дан 24 November 2019 в 15:02
поделиться

Из руководства gcc:

-include file

Обрабатывать файл, как если бы " #include" file "" отображалось как первая строка первичный исходный файл. Однако первый каталог, в котором выполняется поиск файла, - это рабочий каталог препроцессора, а не каталог, содержащий основной исходный файл. Если он там не найден, он ищется в оставшейся части поисковой цепочки " #include" ... "как обычно.

Если указано несколько параметров -include, файлы включаются в том порядке, в котором они появляются в командной строке.

26
ответ дан 24 November 2019 в 15:02
поделиться
Другие вопросы по тегам:

Похожие вопросы: