我是使用 Cmake 编译我自己的 C 代码的完全初学者,我正在运行 Mac OS X Mavericks。
我的问题如下。为了介绍 Cmake,创建了一个包含以下文件夹的文件夹
bin/
build/
src/
fonctions.h
fonctions.c
main.c
这是我的 CMakeLists.txt
文件:
project(Addition)
add_executable(
bin/addition
src/main.c
src/fonctions.h
src/fonctions.c
)
当我运行时:
$ cmake . -G "Unix Makefiles"
然后从我的根文件夹创建,没问题。
但是当我运行时:
$ cmake .. -G "Unix Makefiles"
然后从我的/build 文件夹中制作我收到此错误消息:
Linking C executable bin/addition
ld: can't open output file for writing: bin/addition, errno=2 for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)
make[2]: *** [bin/addition] Error 1
make[1]: *** [CMakeFiles/bin/addition.dir/all] Error 2
make: *** [all] Error 2
谁知道为什么?
最佳答案
从您的 add_executable 中删除 bin/
并使用 CMAKE_RUNTIME_OUTPUT_DIRECTORY更改构建位置
add_executable(
addition
src/main.c
src/fonctions.h
src/fonctions.c
)
关于c - Mac OS Maverick for C 的基本 Cmake 和 make,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22324988/