在Linux上使用cmake创建CodeBlocks工程
最近在linux上使用cmake,对于使用GUI习惯的还真不能适应,真是想尽一切办法把原来使用cmake的工程创建成CodeBlocks工程。工程小了还能接受,工程大了太麻烦了。
看了一下cmake的官方文档从2.2.8以后的版本可以直接使用命令生成codeblocks工程,我的小心脏啊...不过相关文章不太多,可能有我这想法的也不太多,一般使用CMake的都是高手了,不会再这么倒腾,废话不多说了,下面直接从最简单的工程开始吧。
因为cmake官方建议使用外部编译,我们最好也用外部编译。新建一个文件夹为t1,在该目录下新建两个目录分别为Hello_src、build。Hello_src存放源文件和Cmakelists.txt,build存放生成的codeblocks工程。如图:
main.c代码为
1 #include <stdio.h> 2 int main() 3 { 4 printf("Hello World from t1 Main!\n"); 5 return 0; 6 }
CMakeLists.txt
1 PROJECT (HELLO) 2 SET(SRC_LIST main.c) 3 MESSAGE(STATUS "This is BINARY dir " ${HELLO_BINARY_DIR}) 4 MESSAGE(STATUS "This is SOURCE dir "${HELLO_SOURCE_DIR}) 5 ADD_EXECUTABLE(hello ${SRC_LIST})
cmake ../Hello_src -G "CodeBlocks - Unix Makefiles"
如图:
进入build中就看到了codeblocks工程。
不过直接编译运行是有问题的,如图:
选择project-》properties-》Build targets
修改为如图:
之后点击编译运行成功: