Использование GCC под Windows, я хотел бы иметь возможность указать в командной строке gcc (или из файла с управляемым вручную makefile) имя определенного файла include, который будет включен в скомпилированный файл. Как я понимаю, в идеале файл исходный код будет содержать строки что-то вроде ...Как я могу указать файл include из командной строки GCC?
#include INCLUDEFILENAME
... то имя файла указано на GCC в командной строке будет заменен на INCLUDEFILENAME
текста.
Кажется, я могу приблизиться к достижению этой цели путем определения макроса с именем INCLUDEFILENAME на GCC в командной строке с помощью опции -D
(например. -D INCLUDEFILENAME="C:\TestLib\Test1.h"
), но когда текст файла получает подставляется в #include
заявлении он не заключен в двойной кавычки и без них не распознается как файл, который должен быть включен. Конечно ...
#include "INCLUDEFILENAME"
... не работает, как INCLUDEFILENAME становится строковым и не заменяются на значения макроса. Я пробовал другие способы указания двойных кавычек (\x22
, \"
, "\""
и т. Д.), Но они, похоже, не работают на линии #include
.
Мне известно о опции gcc -include
, которая, по-видимому, может привести к включению файла без упоминания каким-либо образом в исходном файле, но я бы предпочел, чтобы исходный файл указывал, что файл include должен быть здесь, но это имя указано «извне» в исходный файл (в конечном счете, из make-файла).
Любые предложения о том, как я могу достичь этого, будут оценены.