代码之家  ›  专栏  ›  技术社区  ›  Isac Casapu

让GCC预处理器把尖括号当作引号

  •  0
  • Isac Casapu  · 技术社区  · 7 年前

    我正在尝试使用系统头文件,这些文件头文件使用了本应使用引号的尖括号。具体来说,我在/usr/include/hdf5/serial/中有一个系统提供的头文件,其中包含

    #include <hdf5.h>
    

    我当然可以通过G++这个选项 -isystem/usr/include/hdf5/串行 ,但我更希望保持模块化,而不是将此配置复制到任何可能最终使用此头的项目中。

    1 回复  |  直到 7 年前
        1
  •  1
  •   Toby Speight    7 年前

    您建议的是唯一合理的解决方案—库要求您将该目录添加到编译器的系统包含路径。要将它与使用头的程序隔离开来,可以向前声明库中所需的内容,或者需要某种抽象层。或者直接把图书馆的 pkg-config 在你自己的图书馆里 .pc 文件。