【发布时间】:2013-05-11 17:41:18
【问题描述】:
我正在尝试编译一个项目,但 CMake 在一开始就停止并显示 gcc 已损坏的消息(见下文)。我对 CMake 很无知,所以非常欢迎任何帮助我开始调试这个问题的地方。
- GCC (Ubuntu/Linaro 4.6.3-1ubuntu5) 4.6.3(我检查了我的 GCC 编译了一个“hello world”问题)
- CMake 版本 2.8.7
- CMake 命令:
cmake -G "Unix Makefiles" -DCMAKE_BUILD_TYPE=Debug ../Mantid
输出到终端:
-- C 编译器标识为 GNU
-- CXX 编译器标识是 GNU
-- 无法确定 Eclipse 版本,假设至少为 3.6 (Helios)。如果这是错误的,请调整 CMAKE_ECLIPSE_VERSION。
-- 检查工作的 C 编译器:/usr/bin/gcc-4.6
-- 检查工作的 C 编译器:/usr/bin/gcc-4.6 -- broken
CMake Error at /usr/share/cmake-2.8/Modules/CMakeTestCCompiler.cmake:52 (MESSAGE):
C 编译器“/usr/bin/gcc-4.6”不能 编译一个简单的测试程序。
失败,输出如下:
更改目录: /home/jmborr/devel/mantidproject/mantid/Code/debug/CMakeFiles/CMakeTmp
运行编译命令:/usr/bin/make "cmTryCompileExec/fast"
/usr/bin/make -f CMakeFiles/cmTryCompileExec.dir/build.make CMakeFiles/cmTryCompileExec.dir/build
make[1]: 进入目录 `/home/jmborr/devel/mantidproject/mantid/Code/debug/CMakeFiles/CMakeTmp'
/usr/bin/cmake -E cmake_progress_report /home/jmborr/devel/mantidproject/mantid/Code/debug/CMakeFiles/CMakeTmp/CMakeFiles 1
构建C对象CMakeFiles/cmTryCompileExec.dir/testCCompiler.c.o
/usr/bin/gcc-4.6 /usr/include -o CMakeFiles/cmTryCompileExec.dir/testCCompiler.c.o -c /home/jmborr/devel/mantidproject/mantid/Code/debug/CMakeFiles/CMakeTmp/testCCompiler.c
gcc-4.6:警告:/usr/include:链接器输入文件未使用,因为 链接未完成
链接 C 可执行文件 cmTryCompileExec
/usr/bin/cmake -E cmake_link_script CMakeFiles/cmTryCompileExec.dir/link.txt --verbose=1
/usr/bin/gcc-4.6 /usr/include /usr/lib CMakeFiles/cmTryCompileExec.dir/testCCompiler.c.o -o cmTryCompileExec -rdynamic
/usr/bin/ld: 找不到 /usr/include: 文件格式不存在 认可
/usr/bin/ld: 找不到 /usr/lib: 文件格式无法识别
collect2: ld 返回 1 个退出状态
make[1]: 离开目录
【问题讨论】: