【发布时间】:2018-09-14 12:22:46
【问题描述】:
我们有一个 C++ 项目,我们想在 Linux (CentOS 7) 上使用 Eclipse 来增强。我们有一个安装了 Eclipse 和 CDT(C++ 插件)的 Linux VM。使用 CMake,我们为项目生成 make 文件并在 Eclipse 中启动它(文件 → 导入 → 常规 → 现有项目到工作区)。从那里我们需要做一些修复以使其编译 C++ 11 代码。我们通过“Properties → C/C++ General → Preprocessor Include Paths, Macros etc.”来做到这一点。页。这一切都构建并运行良好。
我们使用相同版本的 Linux 创建了新的 Linux 虚拟机。我们安装了 Eclipse (Oxygen) 并安装了 CDT 插件。我们遵循与上述所有相同的步骤,除了在这些新 VM 中,没有“C/C++ 常规 → 预处理器包含路径、宏等”。属性对话框中的选项。我们可以将代码编译为 C++ 11,但 IDE 本身无法识别 C++ 11,并将大部分代码标记为错误。如果我们有“预处理器包括路径、宏等”。页面,我们可以进行必要的更改,但是对于我们的生活,我们无法弄清楚为什么它没有出现在新的虚拟机中。两个 Eclipse 安装都有相同的插件(一个,即 CDT)。
我们缺少什么吗?还有其他方法可以访问缺少的页面允许的选项吗?
更新 也许一些视觉会有所帮助。以下是在原始 Linux VM 上打开“属性”页面时的样子:
如您所见,在第二张图片中,没有“预处理器包含路径、宏等”。 “C/C++ General”下的选项。那就是问题所在。如果没有该页面,我们就无法对项目做一些我们需要让它正常运行的事情。
【问题讨论】:
-
看看这是否有帮助:Eclipse CDT C++11/C++0x support
-
我认为您导入的项目错误。检查项目文件夹中的 .project 或 .cproject 文件。比较两个虚拟机的文件
-
谢谢,托马斯。我们将完全相同的文件导入到两个 Eclipse 安装中。
-
谢谢,弗雷德。许多建议需要 C/C++ 构建页面,而我们也没有。另一个页面需要修改“Properties->C/C++ Build->Settings->Tool Settings->GCC C++ Compiler->Miscellaneous->Other Flags”页面,我们也没有这个。
-
您是否尝试过 Fred 链接的问题中的建议,以修改“获取编译器规范的命令”(this answer 的第一部分)?这是我经验中最可靠的方法。
标签: c++ eclipse eclipse-cdt centos7