Eclipse,“无法创建[dir]链接”?由cmake生成

时间:2011-08-09 17:53:57

标签: eclipse hyperlink cmake mingw

导入由cmake 2.8.5(“Eclipse - Unix Makefile”,也是“Eclipse - MingW Makefile”)生成的项目时,我在Eclipse中遇到了一个奇怪的错误:

  

处理项目描述文件中更改的链接时出错。     无法创建指向“[project_dir]”的链接,因为它与包含链接资源的项目的位置重叠。

使用[project_dir]我项目的根文件夹的路径。我在Windows 7,Java 7,Eclipse 3.7,全64位。

这条消息究竟是什么意思?我该如何解决?它似乎唯一引起的问题是Eclipse无法解析某些包含路径(在代码窗口中没有错误的“错误”),使用MingW进行编译工作完全正常但是...... / p>

这似乎也会在Eclipse文件夹视图中产生一个奇怪的空“[Subolders]”文件夹...(不知道这是为了什么)

我已经好几次设置了这个项目,但从来没有得到过这个消息......

有什么想法吗?感谢。

3 个答案:

答案 0 :(得分:0)

如果生成的Eclipse项目位于项目文件夹内的out-of-source CMake构建文件夹中,我看到Eclipse会生成该消息,即:

cd project_dir
mkdir build
cd build
cmake -G "Eclipse - Unix Makefile" ..

作为变通方法,在项目文件夹旁边生成源内CMake构建或生成构建文件夹,即:

mkdir build
cd build
cmake -G "Eclipse - Unix Makefile" ../project_dir

答案 1 :(得分:0)

对于CMake和Eclipse,源外构建通常可以在~CMake 2.8左右时正常工作。但我刚刚看到您在我的顶级CMakeLists.txt文件包含此内容时提及的确切错误消息:

set(EXECUTABLE_OUTPUT_PATH ${CMAKE_BINARY_DIR})

如果删除该行,则错误消失。 (这感觉就像一个错误,但我没有报告它,或确认它是否是预期的行为......)

答案 2 :(得分:0)

已解决; 我遵循sakra的解决方案,但还不够。我在CMakeLists.txt添加了以下几行

set(PROJECT_SOURCE_DIR <somewhere>/workspace/project)
set(EXECUTABLE_OUTPUT_PATH ${PROJECT_SOURCE_DIR})
set(LIBRARY_OUTPUT_PATH ${PROJECT_SOURCE_DIR})

并在 project目录之外调用,CMake:

cmake -G"Eclipse CDT4 - Unix Makefiles" -D CMAKE_BUILD_TYPE=Debug <path_to_project>

然后如前所述导入。请注意错误仍然显示,但一切正常,但 Build 工具(pickaxe按钮)除外,因为没有构建配置而无法工作,但只是目标,如下面的屏幕截图所示。

Make targets for my project.