【问题标题】:Eclipse CDT: Define quoted string as preprocessor defineEclipse CDT:将带引号的字符串定义为预处理器定义
【发布时间】:2017-03-22 22:52:49
【问题描述】:

我有一个包含大量单元测试的 Eclipse CDT C++ 项目。测试需要访问我放在同一目录中data 目录中的数据。我想使用预处理器定义-Dtest_data_dir="<path/to/data/dir>" 来指定要使用的数据目录。

由于 Eclipse 中的 this bug,这似乎不起作用。鉴于此,实现这一目标的最佳方法是什么?我可以硬编码数据目录的路径,但是我会遇到源代码构建找不到目录的问题。

【问题讨论】:

  • 问:你尝试的时候发生了什么?问:您使用的是什么平台(Windows?Linux?),您使用的是什么版本的 Eclipse 和(大概)g++?
  • 它是 OS X 和 linux 上的 eclipse 开普勒。编译器是 g++ 4.8。但问题是日食,特别是那个错误。发生的事情正是链接的错误报告中描述的。 Eclipse 从定义的字符串中去除引号。

标签: c++ eclipse eclipse-cdt


【解决方案1】:

相关的错误报告提供了答案。因为我自己也遇到了这个问题,所以谷歌先把我带到了这里......

答案是将双引号字符串转义为单引号。即:

-Dtest_data_dir='"<path/to/data/dir>"'

【讨论】:

    猜你喜欢
    • 2023-04-04
    • 2017-10-27
    • 2011-10-23
    • 1970-01-01
    • 2017-04-02
    • 2019-05-13
    • 2019-03-19
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多