CMakeList.txt在大型文件应用(以前端为例)

本文详细介绍了CMakeLists.txt在构建大型前端项目中的运用,包括目标设置、步骤分解、多库融合及大型库的构建。通过实例展示了如何管理头文件、寻找库、生成执行文件及链接库,特别是如何整合第三方库如OpenCV、Sophus等,形成统一的THIRD_PARTY_LIBS供项目使用。
摘要由CSDN通过智能技术生成

基本的CMakeLists.txt并不难,主要有生成库、生成执行文件、链接二者以及找库find_package、找头文件include_directories、生成执行文件add_executable、链接库和执行文件target_link_libraries两种方法组成。

但是遇到大型库的编写,目标是生成一个新的大型库myslam,生成执行文件、链接二者。需要提前声明生成执行文件在bin,库在lib中,并把OPenCV、Sophus这些库整合到一个大型的第三方库THIRD_PARTY_LIBS中,供后面的target_link_libraries(myslam ${THIRD_PARTY_LIBS})用。myslam中包括两部分:frame.cpp、mappoint.cpp、map.cpp等+第三方库THIRD_PARTY_LIBS


一、简单的

1)从头开始:(生成库、生成执行文件、链接二者)

CMakeLists.txt

add_library( hello_shared SHARED libHelloSLAM.cpp ) # 生成库

add_executable( useHello useHello.cpp ) #执行文件

target_link_libraries( useHello hello_shared ) # 链接库到执行文件上

1、先生成库文件libhello_shred.so,需要libHelloSLAM.cpp和add_library(hello_shared SHARED libHelloSLAM.cpp)

2、之后要建立头文件libhellSLAM.h告诉如何调用库里的函数,需要把库连接到可执行文件名中 target_link_libraried(useHello hello_shared)

3、主函数useHello.cpp使用头文件

2)利用现成的库:

只需要建立头文件,说明怎么使用即可。

3)大型的库只需修改CMakeList.txt即可(找库、添加头文件、生成执行文件、链接库和执行文件

头文件也已经建立好了,只需找到库然后加入头文件即可使用

CMakeLists.txt

find_package( OpenCV REQUIRED )                            #寻找OpenCV库

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值