栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > C/C++/C#

CMake语法笔记

C/C++/C# 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

CMake语法笔记

工程文件写法

cmake_minimum_required(VERSION 3.0)
project(Zipper)

include(CheckCXXSourceRuns)
include(CheckIncludeFiles)

SET(CMAKE_BUILD_TYPE "Debug/Release/RelWithDebInfo/MinSizeRel”)

set(CMAKE_C_FLAGS_DEBUG "${CMAKE_C_FLAGS_DEBUG} -DEBUG")
set(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} -DEBUG")

set(LIBRARY_OUTPUT_DIR ${CMAKE_BINARY_DIR}/../lib)
set(EXECUTE_OUTPUT_DIR ${CMAKE_BINARY_DIR}/../bin)

set(CMAKE_ARCHIVE_OUTPUT_DIRECTORY ${LIBRARY_OUTPUT_DIR})
set(CMAKE_LIBRARY_OUTPUT_DIRECTORY ${LIBRARY_OUTPUT_DIR})
set(CMAKE_RUNTIME_OUTPUT_DIRECTORY ${EXECUTE_OUTPUT_DIR})

add_subdirectory(Src)

可执行文件写法

# 设置源码文件
file(GLOB_RECURSE sources_Exec 		*.cpp 	*.h)

# 设置一个包含源码文件的变量
set(firecore_SRCS
  ${firecore_SRCS}
  ${sources_Exec}
)

# 设置成可执行程序
add_executable(Zipper
  ${firecore_SRCS}
)

# 添加链接库的目录
link_directories(${CMAKE_CURRENT_SOURCE_DIR}/../)

# 为Zipper项目添加链接库
target_link_libraries(Zipper ZLib)

# include 头文件路径
include_directories(
	${CMAKE_CURRENT_SOURCE_DIR}
	${CMAKE_CURRENT_SOURCE_DIR}/../
)

库文件写法

# 设置源码文件
file(GLOB_RECURSE sources_Core 	  *.c            *.h)

# 设置一个包含源码文件的变量
set(zlib_SRCS
  ${zlib_SRCS}
  ${sources_Core}
)

# 指定这个项目是静态库还是动态库
# add_library(ZLib SHARED
add_library(ZLib STATIC
  ${zlib_SRCS}
)

# c++的头文件路径
include_directories(
	${CMAKE_BINARY_DIR}
	${CMAKE_CURRENT_SOURCE_DIR}
)

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/311603.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号