如何从EclipseCDT中指定预处理器指令? < >我想向GCC C++编译器指定以下指令: g++ -DPRODUCT=\"HFTLibrary.h\"

如何从EclipseCDT中指定预处理器指令? < >我想向GCC C++编译器指定以下指令: g++ -DPRODUCT=\"HFTLibrary.h\",c++,eclipse,C++,Eclipse,我可以在“项目属性”的“命令”字段中进行设置,效果很好 但我无法将其设置为符号: 名称=产品 值=\“HFTLibrary.h\” 最后一个“字符”在我按“确定”后被删除 右键单击项目并打开“属性”对话框(或Alt+Enter) 转到C/C++构建->设置 激活工具设置并查找编译器(即GCC C++编译器) 单击预处理器 单击添加并输入您的符号 …嗯…用我的eclipse版本version:Mars发行版(4.5.0)测试后Build id:20150621-1200似乎有一个bug。它适用于

我可以在“项目属性”的“命令”字段中进行设置,效果很好

但我无法将其设置为符号: 名称=产品 值=\“HFTLibrary.h\”

最后一个“字符”在我按“确定”后被删除

  • 右键单击项目并打开“属性”对话框(或Alt+Enter)
  • 转到
    C/C++构建->设置
  • 激活<代码>工具设置并查找编译器(即GCC C++编译器)
  • 单击
    预处理器
  • 单击
    添加
    并输入您的符号
  • …嗯…用我的eclipse版本
    version:Mars发行版(4.5.0)测试后Build id:20150621-1200
    似乎有一个bug。它适用于普通定义,但当您尝试以这种方式定义字符串时就不起作用了。如果您不加引号,则会添加定义,但当然不能在代码中用作字符串,如果加引号,则只会将整个
    -D..
    用引号括起来,这是错误的


    无论如何,在
    Path and Symbol
    属性中设置它不会影响您的构建,因为这只是告诉eclipse在哪里可以找到索引器的包含项和符号。要使构建受到影响,您必须按照上面所述的方式对其进行更改。

    向eclipse提交了一份错误报告,感谢您@Devolus指示使用预处理我可以这样定义我的字符串。我使用的是
    Eclipse-CDT-Kepler-SR2
    ,所以在您的版本中,这个bug似乎不存在。