#指定了cmake的最低版本
cmake_minimum_required(VERSION 3.5)
#工程名字,自己起的
project(testProject)
#判断编译器类型,如果是gcc编译器,则在编译选项中加入c++11支持
if(CMAKE_COMPILER_IS_GNUCXX)
set(CMAKE_CXX_FLAGS "-std=c++11 ${CMAKE_CXX_FLAGS}")
message(STATUS "optional:-std=c++11")
endif(CMAKE_COMPILER_IS_GNUCXX)
#告诉编译器工程还包含一个子目录function,里面还有一个CmakeList文件,其实也就是告诉编译器先去编译那个子CmakeList文件。
add_subdirectory(function)
#头文件目录
include_directories(function)
#生成可执行文件main,我们在后面将工程中用到的源文件和头文件列出来
add_executable(main main.cpp)
#输出 当前 PROJECT_SOURCE_DIR表示当前目录下 PROJECT_BINARY_DIR表示当前编译目录,一般是build
message(STATUS ${PROJECT_SOURCE_DIR})
# 链接库文件,库文件
# 在子文件夹中创建一个CMakeList.txt 写DIR_FUNC_SRCS
#将该目录下的所有的源文件名字保存在DIR_FUNC_SRCS中
#aux_source_directory(. DIR_FUNC_SRCS)
#生成链接库,名字为funcLib 加SHARED是动态库
#add_library(funcLib ${DIR_FUNC_SRCS})
target_link_libraries(main funcLib)
其他的一些用到的:
SET(CMAKE_CXX_COMPILER "arm-linux-gnueabihf-g++")
SET(CMAKE_C_COMPILER "arm-linux-gnueabihf-gcc")
aux_source_directory(${PROJECT_SOURCE_DIR}/share DIR_SHARE)
add_executable(exec ${DIR_SHARE})
原文链接: https://www.cnblogs.com/lianganant/p/15802473.html
欢迎关注
微信关注下方公众号,第一时间获取干货硬货;公众号内回复【pdf】免费获取数百本计算机经典书籍
原创文章受到原创版权保护。转载请注明出处:https://www.ccppcoding.com/archives/185437
非原创文章文中已经注明原地址,如有侵权,联系删除
关注公众号【高性能架构探索】,第一时间获取最新文章
转载文章受原作者版权保护。转载请注明原作者出处!