cmake编译多个文件夹_多级目录下cmake CMakeLists.txt使用方法(多个CmakeLists.txt编译)…

#Cmake最低版本要求

CMAKE_MINIMUM_REQUIRED(VERSION 2.6)

#项目名称

PROJECT(mmseg CXX)

#允许gdb调试

set(CMAKE_BUILD_TYPE “Debug”)

set(CMAKE_CXX_FLAGS_DEBUG “$ENV{CXXFLAGS} -O0 -Wall -g -ggdb”)

set(CMAKE_CXX_FLAGS_RELEASE “$ENV{CXXFLAGS} -O3 -Wall”)

#添加C++11支持及其他选项

set(CMAKE_CXX_FLAGS “-std=c++0x ${CMAKE_CXX_FLAGS} -g -ftest-coverage -fprofile-arcs -Wno-deprecated”)

#set(CMAKE_CXX_FLAGS “-std=c++0x ${CMAKE_CXX_FLAGS -g -ftest-coverage -fprofile-arcs”})

# 头文件目录

include_directories(“路径”)

# 例如

#include_directories(

# ${PROJECT_SOURCE_DIR}

# ${PROJECT_SOURCE_DIR}/include

# ${EIGEN3_INCLUDE_DIR}

)

#添加dict子目录

add_subdirectory(dict)

#当前目录下所有源文件赋给DIR_SRCS

AUX_SOURCE_DIRECTORY(. DIR_SRCS)

#生成可执行文件

add_executable(mmseg ${DIR_SRCS})

#添加C++11编译选项,但是只有CMAKE 3.1支持

#target_compile_features(mmseg PRIVATE cxx_range_for)

#添加链接库

target_link_libraries(mmseg Dict)

# 需要链接额外的动态库时:

# target_link_libraries(${PROJECT_NAME}

# /usr/lib/i386-linux-gnu/libboost_system.so

)


版权声明:本文为weixin_34634720原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。