版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/zhanghm1995/article/details/84553307
平时经常使用到包括OpenCV
, PCL
, Eigen
, Boost
等库,因此经常涉及到书写有关这些库的CMakeLists.txt
文件,本博客就记录下使用这些库的CMakeList文件的一般写法。
CMakeLists.txt
:
cmake_minimum_required(VERSION 2.8.12)
project(test)
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wall -std=gnu++0x")
set(CMAKE_BUILD_TYPE "Release")
#find packages
find_package(OpenCV REQUIRED)
find_package(Boost COMPONENTS system iostreams)
find_package(Eigen3 REQUIRED)
find_package(PCL 1.7 REQUIRED)
#include headers
add_definitions(${PCL_DEFINITIONS})
include_directories(${OpenCV_INCLUDE_DIRS} ${Boost_INCLUDE_DIRS} ${EIGEN3_INCLUDE_DIR} ${PCL_INCLUDE_DIRS})
#target generation
set(SRC main.cpp)
add_executable(test ${SRC})
target_link_libraries(test ${OpenCV_LIBS} ${Boost_LIBRARIES} ${EIGEN3_INCLUDE_DIR} ${PCL_LIBRARIES})