相比起繁杂难记的autotools,CMake真是一个好东东啊!!
网址:
<a href="http://www.cmake.org/">http://www.cmake.org</a>
文档:
<a href="http://www.cmake.org/HTML/Documentation.html">http://www.cmake.org/HTML/Documentation.html</a>
假定项目为ProjectTest。项目结构如下:
src 放置源文件(*.h *.cpp),具体为
src/dira
src/dirb
src/dirc
bin 放置编译后的可执行程序
A.so B.a 第三方库
CMakelists.txt(放根目录下)可以这样写:
#项目名称
PROJECT (ProjectTest)
#头文件路径
INCLUDE_DIRECTORIES(
src/dira
src/dirb
src/dirc
)
#表示cpp文件列表的变量,如${DIRA_SRCS}代表src/dira目录下的所有源文件
AUX_SOURCE_DIRECTORY(src/dira DIRA_SRCS)
AUX_SOURCE_DIRECTORY(src/dirb DIRB_SRCS)
AUX_SOURCE_DIRECTORY(src/dirc DIRC_SRCS)
#设置变量${TEST_SRCS}
SET(TEST_SRCS
${DIRA_SRCS}
${DIRB_SRCS}
${DIRC_SRCS}
#需要链接的第三方库
SET(LIBRARYS
A.so
B.a
#添加可执行文件生成任务
ADD_EXECUTABLE(bin/test ${TEST_SRCS}})
#添加链接库
TARGET_LINK_LIBRARIES(bin/test ${LIBRARYS})
运行cmake CMakelists.txt,生成一份pp的Makefile文件--非常愉快的使用体验。
本文转自xiaotie博客园博客,原文链接http://www.cnblogs.com/xiaotie/archive/2006/04/17/376778.html如需转载请自行联系原作者
xiaotie 集异璧实验室(GEBLAB)