2009-10-14 85 views
7

我有一个使用CMake系统构建的项目,我喜欢在Eclipse中导入它。但是,当我使用'cmake -G'生成eclipse项目文件时,Eclipse CDT4 - Unix Makefiles'' 在Eclipse项目中没有默认包含路径(例如/ usr/include或标准头文件的gcc路径)。cmake和eclipse:默认包含路径?

如何以最正确的方式解决这个问题?

系统: Linux的 GCC 4.3.3 cmake的2.6.4 日食3.5.1

回答

6

你必须去到项目属性(在项目右侧的按钮),“C/C++包含路径和符号“,并将它们添加为”外部包含路径“。

+4

的变化应该在CMakeList.txt来完成,因为Eclipse项目文件generqated – dimba 2009-10-14 07:40:28

+0

我知道,但只有一次。当CMakeList文件更改为 时,请勿将此设置修改为Eclipse项目。向eclipse项目中添加标准头文件只是为了让索引器能够找到它们,但与构建过程无关。 – 2009-10-14 08:00:56

+0

fnieto是对的,或者至少他所说的是我所知道的唯一解决方案。据我所知,没有更好的解决方案。 – 2009-10-14 08:04:44

6

在你的CMakeLists.txt尝试添加以下两行:

find_path(STDIO_INCLUDE_PATH stdio.h) 
include_directories("${STDIO_INCLUDE_PATH}/dummy/../") 

第一行查找为stdio.h的路径,它位于/usr/include我的系统上。第二个将此文件夹添加到CMake包含路径。 /dummy/../部分被添加到诱骗CMake添加文件夹(否则不会),并最终将被剥离。

这适用于CMake 2.8.8和Eclipse 3.7.2。

1

尝试

cmake -G"Eclipse CDT4 - Unix Makefiles" -DCMAKE_ECLIPSE_VERSION=<put here your eclipse version> ../src 

我的情况是

cmake -G"Eclipse CDT4 - Unix Makefiles" -DCMAKE_ECLIPSE_VERSION=4.2 ../src 

我希望它能帮助