CMake 编译项目

一、概述

cmake 是C++一个很重要的编译和项目管理工具,我们在git 上以及常见的项目现在多数都是用cmake 管理的,那么我们今天就做一个同时有Opencv和CGAL 以及PCL 的项目。

二、项目管理

重点是CMakeList.txt 

1、CMakeList.txt 

cmake_minimum_required(VERSION 3.2 FATAL_ERROR)   #Cmake的最低版本
project(Hello)
# 寻找PCL库
find_package(PCL 1.12 REQUIRED)

# 包含PCL头文件目录
include_directories(${PCL_INCLUDE_DIRS})

# 寻找OpenCV库
find_package(OpenCV 4.4 REQUIRED)

# 包含OpenCV头文件目录
include_directories(${OpenCV_INCLUDE_DIRS})

# 添加cgal库
find_package(CGAL REQUIRED COMPONENTS Core)
include(${CGAL_USE_FILE})
message("CGAL_USE_FILE = ${CGAL_USE_FILE}")


# 添加可执行文件或库
file(GLOB SRC_LIST "${PROJECT_SOURCE_DIR}/*.cpp")
file(GLOB HEADER_LIST "${PROJECT_SOURCE_DIR}/*.h*")
message("SRC_LIST:" ${SRC_LIST})
message("SRC_LIST:" ${HEADER_LIST})
# 生成dll的名字
add_library(HelloDll SHARED ${SRC_LIST} ${HEADER_LIST})
# 链接OpenCV库 PCL库
target_link_libraries(HelloDll 
${OpenCV_LIBS}
${PCL_LIBRARIES}
)


// 测试的项目
add_executable(${PROJECT_NAME}_test ./main.cpp)
target_link_libraries(${PROJECT_NAME}_test 
	${PCL_LIBS}
	${PROJECT_NAME}
)

2、编译

编译后的

 

 2、生成

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值