代码之家  ›  专栏  ›  技术社区  ›  Be Kind To New Users

根据编译的文件更改CPPPATH

  •  0
  • Be Kind To New Users  · 技术社区  · 3 年前

    我有一些.c文件,这些文件将编译为.o文件。这些.c文件包括第三方.h文件。我只想将第三方文件夹作为仅用于需要它的文件的包含位置。

    以下是我想要做的伪代码:

    gcc -o one.o -Imypath/include one.c
    gcc -o two.o -Imypath/include two.c
    gcc -o thirdpartyinterface.o -Imypath/include -Ithirdpartypath/include thirdparty.c
    gcc -o theexe one.o two.o thirdpartyinterface.o
    

    请注意,我只希望第三方接口代码包含第三方路径。

    我面临的问题是,scons似乎喜欢使用一个CPPPATH来处理所有用它编译的东西 env .

    经过思考,我认为我可以将我的第三方界面构建为.a,如果这会有所帮助的话。

    0 回复  |  直到 3 年前
        1
  •  3
  •   Mats Wichmann    3 年前

    在调用生成器时,可以包含关键字参数以进行临时重写。这些仅对特定构建是活动的,不会更改活动环境。例如

    obj = Object('hello.c', CCFLAGS='-MD -MF hello.d', CPPPATH='.')