【Script系列】之CMake学习总结

版权声明:本文为博主原创文章,未经博主允许不得转载。若允许转载,请注明来源https://blog.csdn.net/SoaringLee_fighting,否则保留追究法律责任的权利!另外,本人提供付费咨询服务并长期承接各类毕设以及外包项目。联系QQ: 2963033731。加Q备注:CSDN外包 ;或者直接点击左边公告中QQ图标联系我哦! https://blog.csdn.net/SoaringLee_fighting/article/details/84933155

DATE: 2018.12.15


1、参考

make教程:https://www.w3cschool.cn/mexvtg/adisqozt.html
CMake简介:https://blog.csdn.net/SoaringLee_fighting/article/details/53447198

2、前言

    前面讲过makefile的自动化编译过程,可参考多平台编译以及makefile自动化编译总结,make以及makefile是用于进行自动化编译的工具,可以实现对工程的自动化编译。这里讲的是cmake和CMakeList的使用,CMake是一个跨平台的安装(编译)工具,能够输出各种各样的makefile或者project文件。

3、CMake和CMakeLists使用方法

参考一下博客形成总结:
cmake 学习笔记:https://blog.csdn.net/dbzhang800/article/details/6314073
CMake 使用方法:http://www.cnblogs.com/lyq105/archive/2010/12/03/1895067.html
CMakeList的基本写法:https://blog.csdn.net/u010122972/article/details/78216013
cmake使用方法详解:https://www.cnblogs.com/lidabo/p/7359422.html

3.1、CMake使用方法

CMake官方网址:https://cmake.org/

3.2、CMakeLists语法规则及编写方法
4、实例解析
#RD 17.0 CMakeLists
PROJECT(RD)
CMAKE_MINIMUM_REQUIRED(VERSION 2.8.8)

INCLUDE_DIRECTORIES(lcommon)
SUBDIRS(lcommon lencod ldecod)

SET(CMAKE_CONFIGURATION_TYPES Debug Release CACHE TYPE INTERNAL FORCE)
SET(CMAKE_SUPPRESS_REGENERATION true)
SET(CMAKE_EXE_LINKER_FLAGS "/NOLOGO /INCREMENTAL:NO /NXCOMPAT /DYNAMICBASE:NO")

SET(RuntimeOutputDir ${CMAKE_BINARY_DIR}/../../source/bin)
SET(CMAKE_RUNTIME_OUTPUT_DIRECTORY_DEBUG ${RuntimeOutputDir})
# SET(CMAKE_RUNTIME_OUTPUT_DIRECTORY_MINSIZEREL ${RuntimeOutputDir})
SET(CMAKE_RUNTIME_OUTPUT_DIRECTORY_RELEASE ${RuntimeOutputDir})
# SET(CMAKE_RUNTIME_OUTPUT_DIRECTORY_RELWITHDEBINFO ${RuntimeOutputDir})
ADD_DEFINITIONS(-D_CRT_SECURE_NO_WARNINGS)
ADD_DEFINITIONS(-DCMAKE_BUILD_TYPE=RELEASE)
ADD_DEFINITIONS(/W3)
SET(CMAKE_C_FLAGS_RELEASE "${CMAKE_C_FLAGS_RELEASE} /MT")
SET(CMAKE_C_FLAGS_DEBUG "${CMAKE_C_FLAGS_DEBUG} /MTd")


THE END !

猜你喜欢

转载自blog.csdn.net/SoaringLee_fighting/article/details/84933155
今日推荐