首页 > 编程知识 正文

cmake入门,cmake安装教程

时间:2023-05-04 11:02:40 阅读:27952 作者:509

Cmake介绍了Cmake是跨平台的编译器,可以输出makefile文件和项目文件

step 1简单的项目配置是CMakeList.txt由三行组成。

cake _ minimum _ required (版本3.10 ) settheprojectnameproject (tutorial ) addtheexecutableadd_executable ) tutorial

项目:设置项目名称和版本号,然后单击、

项目(tutorial version 1.0 ) configure_file ) tutorial config.h.intutorial config.h ):configure _ file inputoutppp

configure_file主要实现以下两个功能:

将input 文件上的所有内容复制到output文件中; 基于参数规则替换@VAR@或${VAR}变量; 只复制

仅将input 文件的内容发送到output文件,不进行变量的替换; ESCAPE_QUOTES

使用反斜杠(c语言样式)进行转义; @ONLY

限制替换,只替换@VAR@变量,不替换${VAR}变量NEWLINE_STYLE

指定输入文件的新行格式。 例如,在Unix上使用n,而在windows上 rn * * : * *仅复制与NEWLINE_STYLE冲突,因此不能同时使用。

Config.h.in文件的内容

/* * thisistheconfiguredemo *-cmake define _ var1=@ cmake define _ var1@ *-cmake define _ var2=@ cmake define _ var 2 cmakedefine将转换为#define VAR .或#undef VAR */#,具体取决于变量的值是否为真cmakedefinecmakedefine _ var2@ cmake define _ var2@/* * define define define _ var1@ define _ var1@ # define define _ var

计算//平方根的简单程序。 # include stdio.h # include stdlib.h # include math.h # include ' config.h ' int main (int argc, char * argv [ () ifig.h ) intmain )、char * argv [ () ) ifi # endif # ifdefcmakedefine _ var2fprintf (stdout,' CMMI # endif # ifdef define_var1fprintf (stdout,' DEFINE_VAR1=%dn ',define _ var1); # endif # ifdef define_var2fprintf (stdout,' DEFINE_VAR2=%dn ',define _ var2); #endif return 0; } make.sh保存几个命令(这不是必需的) ) )。

#! /惧怕孤独的悟空/sh#生成的文件RM-rfcmakefilesrmcmake _ installrmmakefilermconfig.hrmdemormcmakecache.txtrm-RF./vscodermmmakerm DEMO 3.1运行sh make.sh生成Config.h配置文件,文档内容为:/* * * thisistheconfiguredemo *-cmake define _ var1=-define cmakedefine取决于变量的值是否为真,#define VAR .或# undef var */# definecmakedefine _ var1/* # undefcmakedefine definedefine_var20终结显示: scanningdependenciesoftargetdemo [ 50 % ] buildingcxxobjectcmakefiles/demo tutorial.CPP.o builttargetdemocmakedefine _ var1=1define _ var1=1define highlight=cmake define

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。