关于CMake
由于CMake的跨平台特性,现在已经被越来越多的项目使用。
关于CMake的基础介绍,请参考cmake入门实践。
本文提炼了一个精简的CMakeLists文件,通过适当的修改,可用于简单的项目中。
模板
直接上CMakeLists文件:
cmake_minimum_required(VERSION 2.8)
project(demo)
set(CMAKE_CXX_STANDARD 11)
if (MSVC)
add_compile_options(/W4 /WX)
else()
add_compile_options(-Wall -Wextra -pedantic -Werror)
endif()
set(ROOT_DIR /home/tf)
include_directories(
${ROOT_DIR}/include
${ROOT_DIR}/include/third_party
)
link_directories(${ROOT_DIR}/lib)
add_subdirecroty(sub_dir [binary_dir])
aux_source_directory(./src DIR_SRCS)
add_executable(a.out ${DIR_SRCS})
target_link_libraries(a.out
pthread
boost_thread
boost_system
)