程序人生

 

cmake学习笔记1

 

cmake学习笔记1

参考文章 CMAKE实践 /Files/7ouro/cmake.pdf

语言和语法

第一个简单例子    Example 1: HelloWorld

 

计算机生成了可选文字: 《O国,止旧卜我的文档卜钾.心如双.卜比.勺O肠国.
,l好旧欲浦幼盼冲〔
组织,
包含到库中,共享,
刻录新建文件夹
仰.记沁.(.'
奥面
攀
:奋卜夕
(Md铂L匕匕.比t
文本文档
217字节
犯库
简RlljnO的
哟
m。峨甲p
C++交朋t.
96字节
眯,j
.,一…

 

在CMakeLists.txt文件中

PROJECT(HelloWorld)

SET(SRC_LIST main.cpp)

MESSAGE(STATUS "This is BINARY dir " ${HelloWorld_BINARY_DIR})

MESSAGE(STATUS "This is SOURCE dir " ${HelloWorld_SOURCE_DIR})

ADD_EXECUABLE(helloworld ${SRC_LIST})

 

在控制台上输入cmake .

计算机生成了可选文字: 园嘎巫芬痊亘鑫逊二一」皿二尸.
口
\Danube\Doc皿ents\如ensource\Usin求Make>c功ake。
Bu11dingfor:VisualStudio10
CheckforworkingCco功pilerusing:VisualStudio10
CheckforworkingCco功pilerusing:VisualStudio10一works
DetectingCcompilerABIinfo
DetectingCcompilerABIinfo一done
CheckforworkingCXXco功pilerusing:VisualStudio10
CheckforworkingCXXco功pilerusing:VisualStudlo10一works
DetectingCXXco功pilerABIinfo
DetectingCXXcompilerABIinfo一done
Th1515BINARYdirF:/Danube/Docu口ents/opensource/UsingCMake
This15SOURCEdirF:/Danube/Docu功ents/opensource/UsingCMake
Conflguringdone
Generatingdone
Bu11dfileshavebeenwrittento:F:/Danube/Documents/opensource/UsingCMake
人叹间巨―厅{L匕巨L
l----
飞!d
八Danube\Doc皿ents\即ensource\UsingCMake>
l―川阵―--―匕厂
于午浦性
三一一‘分

 -----         运行完成后,将看到  -----

计算机生成了可选文字: 姜一0
"C卜汉女翔代.卜USI勺0价国.卜
,}好.夕冲伪仍。口由加
组织,
卜爪收截夹
。乞库
卜礴家庭组
卜J甲计娜机
沙勺网络
包含到库中,
共享,
刻录新建文件夹
O诀国翎自1.5
文件夹
网咬网ALL一叫LD·说甲咧
.。犷十扭vc++R咧.(t
一呈卜J双。H8
ALL_eUILD.梢汉p旧」.nlte污
V(++八剑倪t「目比污F'le
667字节
O眺国的(O廿比.比七
___,
(行刘腼‘佰toll.'md勿
(拟泊时〔文件
1.48HB
文本文档
123HB
O晚必份L以乐比七
文本文档
它17字节
He!!OU」川d习n
M沁众沁代V匕泊1Sh川沁501以沁n
丫口污沁叭:V匕力15加心沁空O】O
阮”浏川d.代中咧
代++自剑.tt
30.0HS
hellouJ0dd.范户OJ刊."
V(++阳」.ctF.it已,',I。
仪抖字节
n旧协·‘pp
台+乡挑成自
96字节
长Ro-(冲E(洲.目户剑
V(++A。】.tt
18.9HB
2臼O-O怕田湘中咧川加.
代++所oJ.c七Fll加污F'Ie
739字节
蔓董哟夔
).l.剔里昭子董
月
12个对象
诀

PROJECT语法指令

PROJECT(projectname [CXX] [C] [JAVA])

<projectname>_BINARY_DIR

<projectname>_SOURCE_DIR

或者使用

PROJECT_BINARY_DIR     PROJECT_SOURCE_DIR 这样修改工程名就不用修改<projectname>引用过的地方

 

SET语法指令

SET(VAR [VALUE] […])

如果多个文件 SET(SRC_LIST main.cpp t1.cpp t2.cpp)

 

MESSAGE语法指令

MESSAGE([SEND_ERROR | STATUS | FATAL_ERROR] ''message to display" …)

向终端用户输入定义的信息

SEND_ERROR,产生错误,生成过程被跳过

SATUS,输出前缀为-的信息


注明:这个例子比较简单,上面只简单介绍了example中使用到的东西
对指令的解释参考了cmake实践中的原话,由于cmake实践中给是在linux上面的例子,我自己想了解在windows上面的工程搭建,
比较大的工程,这篇是简单的入门介绍~~~

 









最后打开工程编译

然后可以看到编译成功

posted on 2010-08-01 11:17 柒絲藕 阅读(356) 评论(0)  编辑 收藏 引用


只有注册用户登录后才能发表评论。
【推荐】超50万行VC++源码: 大型组态工控、电力仿真CAD与GIS源码库
网站导航: 博客园   IT新闻   BlogJava   知识库   博问   管理


导航

统计

常用链接

留言簿

随笔分类

随笔档案

搜索

最新评论

阅读排行榜

评论排行榜