【问题标题】:Build with different values in c++ Eclipse CDT在 c++ Eclipse CDT 中使用不同的值构建
【发布时间】:2015-05-11 19:45:33
【问题描述】:

如何在 c++/Eclipse CDT 中做到这一点?

#if BUILD = DEBUG
#define DB_FILE="DB"
#elif BUILD = RELEASE
#define DB_FILE="/home/project/clientXY.DB"
....

CDT 中是否有任何配置选项可以在构建之间进行修改(以更改上述参数)?

非常感谢:D

【问题讨论】:

  • 您使用哪个版本的 Eclipse?

标签: c++ linux eclipse c-preprocessor eclipse-cdt


【解决方案1】:

如果您进入项目属性对话框,选择 C/C++ 常规 - 路径和符号并选择符号选项卡,您可以设置符号,就像您在代码中#定义它们一样。

由于上面有一个“配置”选择器,我想你可以有 >1 具有不同符号的配置,尽管我没有尝试过。此外,我不会在实际构建过程中使用这些符号,我只是使用它们来帮助查看处于条件配置下的部分。

不过,我希望这会有所帮助。

【讨论】:

    【解决方案2】:

    我在项目的属性中找到了答案,如果你想要某种在 Debug 和 Release 或任何其他之间不同的预处理器过程,你唯一需要做的就是:

    1. 项目的属性
    2. C/C++ 构建
    3. 设置
    4. 工具设置
    5. 如果您使用的是 C++“GCC C++ 编译器”,如果您不是“GCC C 编译器”
    6. 预处理器
    7. 在定义的 Sumbols(-D)“添加...”下
    8. 你写了“XXX_BUILD”之类的东西,我写的是“BUILD_RELEASE”
    9. 申请并确定

    记得在两个构建配置中都这样做。

    然后在您的代码中(在我的情况下在标题中)添加以下内容

    #ifdef XXX_BUILD
     //something
     #include "someHeaderThatOnlyWorkOnXXX_BUILD.h"
    #elif YYY_BUILD
     //something else
     #include "someWhereElseThatWorksOnYYY_BUILD.h"
    #endif
    

    【讨论】:

      猜你喜欢
      • 2010-11-14
      • 1970-01-01
      • 1970-01-01
      • 2011-01-07
      • 2013-11-30
      • 2010-11-13
      • 1970-01-01
      • 2011-01-20
      • 1970-01-01
      相关资源
      最近更新 更多