C++源码pcl1.13.0库编译环境搭建及配置

news2025/7/10 14:15:00

Pcl github库

https://github.com/PointCloudLibrary/pcl

官网地址

https://pointclouds.org/

Pcl exe的下载地址,各个版本,以及各版本对应的源码

https://github.com/PointCloudLibrary/pcl/releases

源码需要编译,编译之前安装AllInOne的exe程序(备注:对应的vtk是9.2版本)

拷贝对应的PDB压缩包解压后的PDB文件,到你PCL安装路径下的bin文件夹,本人路径C:\pcl13\PCL1.13.0\bin。就是里面有pcl开头的.dll文件的那个文件夹。

编辑系统变量Path

添加如下:

C:\pcl13\PCL1.13.0\bin;

C:\pcl13\PCL1.13.0\3rdParty\FLANN\bin;

C:\pcl13\PCL1.13.0\3rdParty\Qhull\bin;

C:\pcl13\PCL1.13.0\3rdParty\VTK\bin

C:\Program Files\OpenNI2\Tools;

上面配置完成后,点击pcl--bin下面的exe不报错就表示配置成功了

(备注:不配置的时候会报错误“xxxx.dll找不到”)

然后cmake编译pcl的源码,报下面的错误

CMake Error at E:/cmake-3.26.0-rc5-windows-x86_64/share/cmake-3.26/Modules/FindPackageHandleStandardArgs.cmake:230 (message):
Could NOT find Boost (missing: Boost_INCLUDE_DIR filesystem date_time
iostreams system) (Required is at least version "1.65.0")
Call Stack (most recent call first):
E:/cmake-3.26.0-rc5-windows-x86_64/share/cmake-3.26/Modules/FindPackageHandleStandardArgs.cmake:600 (_FPHSA_FAILURE_MESSAGE)
E:/cmake-3.26.0-rc5-windows-x86_64/share/cmake-3.26/Modules/FindBoost.cmake:2377 (find_package_handle_standard_args)
cmake/pcl_find_boost.cmake:30 (find_package)
CMakeLists.txt:412 (include)

上面的错误需要指定一下eigen的路径见下图

需要加入3个entry

BOOST_ROOT

设定为:C:\Program Files\PCL1.13.0\3rdParty\Boost(此路径为PCL-1.13.0-AllInOne-msvc2022-win64.exe的安装路径)

BOOST_INCLUDEDIR

设定为:C:\Program Files\PCL1.13.0\3rdParty\Boost\include

BOOST_LIBRARYDIR

设定为:C:\Program Files\PCL1.13.0\3rdParty\Boost\lib

再次点击configure就可以过去了

上面没问题后,即可生成sln解决方案,用vs2022打开

点击解决方案“重新生成”然后“生成”

108>pcl_obj_rec_ransac_hash_table.vcxproj -> F:\pcl13sourcebuild\bin\pcl_obj_rec_ransac_hash_tabled.exe
108>已完成生成项目“pcl_obj_rec_ransac_hash_table.vcxproj”的操作。
113>------ 已启动全部重新生成: 项目: pcl_compute_cloud_error, 配置: Debug x64 ------
113>1>Building Custom Rule F:/pcl13source/pcl/tools/CMakeLists.txt
112>boundary_estimation.cpp
113>compute_cloud_error.cpp
109>pcl_obj_rec_ransac_accepted_hypotheses.vcxproj -> F:\pcl13sourcebuild\bin\pcl_obj_rec_ransac_accepted_hypothesesd.exe
109>已完成生成项目“pcl_obj_rec_ransac_accepted_hypotheses.vcxproj”的操作。
114>------ 已启动全部重新生成: 项目: pcl_add_gaussian_noise, 配置: Debug x64 ------
114>1>Building Custom Rule F:/pcl13source/pcl/tools/CMakeLists.txt
114>add_gaussian_noise.cpp
112>pcl_boundary_estimation.vcxproj -> F:\pcl13sourcebuild\bin\pcl_boundary_estimationd.exe
111>pcl_linemod_detection.vcxproj -> F:\pcl13sourcebuild\bin\pcl_linemod_detectiond.exe
113>pcl_compute_cloud_error.vcxproj -> F:\pcl13sourcebuild\bin\pcl_compute_cloud_errord.exe
114>pcl_add_gaussian_noise.vcxproj -> F:\pcl13sourcebuild\bin\pcl_add_gaussian_noised.exe
115>------ 已跳过全部重新生成: 项目: TOOLS_BUILD, 配置: Debug x64 ------
115>没有为此解决方案配置选中要生成的项目 
116>------ 已启动全部重新生成: 项目: ALL_BUILD, 配置: Debug x64 ------
116>1>Building Custom Rule F:/pcl13source/pcl/CMakeLists.txt
117>------ 已跳过全部重新生成: 项目: PACKAGE, 配置: Debug x64 ------
117>没有为此解决方案配置选中要生成的项目 
118>------ 已跳过全部重新生成: 项目: INSTALL, 配置: Debug x64 ------
118>没有为此解决方案配置选中要生成的项目 
========== “全部重新生成”: 114 成功,0 失败,4已跳过 ==========

得到的下面四个文件,就是编译c++文件时候需要引用的配置文件了

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/396270.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【数据结构】单链表:头部操作我很行,插入也不用增容!!!

单链表 文章目录单链表1.链表1.1链表的概念和结构1.2链表的分类2.单链表的模拟实现2.1单链表的打印2.2单链表的尾插2.3单链表的头插2.4单链表的尾删2.5单链表的头删2.6单链表的查找2.7单链表的中间插入(在结点前插入)2.8单链表的中间删除(删除该结点)2.9单链表的中间插入(在结点…

如何学好市场营销?

首先,要学好市场营销学肯定是需要看书的,可以多看些类似《经理人参阅:市场营销》一类的经典书籍,虽然比普通书贵些但是值。注意该书只有其官网有,请自行百度。看书在于精而不在于多,个人认为要学好市场营销…

软考高级备考哪一个类型好些?

软考高级是比中级和初级难,科目就要考三科,选择题基础知识简答题案例分析写作论文 软考高级科目有:信息系统项目管理师、系统分析师、系统架构设计师、网络规划师、系统规划与管理师。如下: 软考高级中高项信息系统项目管理师师比…

Qt 贴图实现方向控制盘

一、效果走一波 二、使用贴图进行不规则按钮的设计与开发 开发环境描述:QtCreator Qt Desinger (1)首先准备待贴的图片 ​ 图片的切片大小必须一样,背景为透明的;将待贴的所有图片都切下来,文件标明名称…

移动App性能测试包含哪些内容?App性能测试工具有哪些?

随着互联网高科技的蓬勃发展,移动app的的需求量和供给量都较大。但一款好app的成功上线以及为用户带来高效体验,性能测试起着关键性的作用。性能测试是通过自动化的测试工具模拟多种正常、峰值以及异常负载条件来对系统的各项性能指标进行测试&#xff0…

【STM32存储器映射-寄存器基地址-偏移】

前言 在学习STM32的时候&#xff0c;我们看到很多的寄存器编程&#xff0c; 比方说LED灯&#xff1a; //GPIOB.5端口输出高电平GPIOB->ODR|1<<5; //PB.5 输出高GPIOE->ODR|1<<5; //PE.5输出高 //GPIOB端口全部输出高电平*(unsigned int*)(0x4001 …

从深分页查询到覆盖索引

最近看到一道面试题&#xff0c;如何优化深分页查询 最简单的例子是 select * from web_bill_main limit 30000,10;分页达到30000行&#xff0c;需要把前面29999行都过滤掉&#xff0c;才能找到这10条数据 所以整体时间花了80ms(工具显示时间) 我当时的第一反应是&#xff0…

python Django的admin后台建设

什么是admin管理后台 1、django提供了完善的后台管理数据库的接口&#xff0c;可供开发过程中调用和测试使用2、django 会搜集所有已注册的模型类&#xff0c;为这些模型类提供数据管理界面&#xff0c;供开发者使用admin配置步骤1、创建后台管理账号-该账号为管理后台最高权限…

193、【动态规划】AcWing —— 291. 蒙德里安的梦想:状压dp详细解析(C++版本)

题目描述 原题链接&#xff1a;291. 蒙德里安的梦想 解题思路 &#xff08;1&#xff09;状态压缩dp先导知识 状态压缩会用二进制位来存储状态信息&#xff0c;在状态计算时&#xff0c;将整数转化为二进制爹形式进行计算。 可表示的状态就是 2n2^n2n 个。 &#xff08;2&…

python 列表删除多个元素

文章目录一. 删除列表多个元素方法1 使用枚举&#xff1a;2. 使用python中List.pop()方法3. 使用python中List.remove()方法4. 注意二. 使用双指针法删除列表多个元素1. 问题描述&#xff1a;2. 解决方法&#xff1a;3. 代码如下&#xff1a;三. 总结四. 相关链接一. 删除列表多…

扩盘操作LVM扩容操作-Centos7

生产环境要扩容&#xff0c;太久没试过LVM&#xff0c;记录一下走过的坑 [rootarchive ~]# df -h #查看磁盘挂载&#xff0c;对/dev/mapper/vgnfs-lvdata进行扩容 文件系统 容量 已用 可用 已用% 挂载点 devtmpfs 909M 0 909M 0…

文件上传漏洞知识总结

直接使用别人的靶场总感觉不太好&#xff0c;那么就干脆自己写一个自己的文件上传靶场吧。正好博客之前也没有单独总结过文件上传的知识点&#xff0c;那么就顺便水一篇文章&#xff0c;岂不是一举两得。当然关于文件上传 upload-labs 总结的比较全面了&#xff0c;非强迫症患者…

HTTP协议详解(上)

目录 前言&#xff1a; 认识URL HTTP协议方法 通过Fiddler抓包 GET和POST之间典型区别 header详解 HTTP响应状态码 常见状态码解释 状态码分类 HTTP协议报文格式 小结&#xff1a; 前言&#xff1a; HTTP协议属于应用层协议&#xff0c;称为超文本传输协议&#xff…

aws dynamodb 基础概念和理论

参考资料 https://amazon-dynamodb-labs.workshop.aws/https://docs.amazonaws.cn/amazondynamodb/latest/developerguide/Introduction.html dynamodb的工作原理 核心概念 table、item和attributes是dynamodb的核心组件&#xff0c;可以分别对应关系型数据库中的表&#x…

JavaScript新手学习手册-基础代码(三)

与上篇博客相接 一&#xff1a;Date对象 var date new Date();console.log(date); //全部时间console.log(date.getFullYear()); //年console.log(date.getMonth()); //月console.log(date.getDay()); //星期几console.log(date.getHours()) //时console.log(d…

java实现Hbase 增删改查

目录 一、新建一个maven工程 二、代码实现 2.1、配置hbase信息&#xff0c;连接hbase数据库 2.2、创建命名空间 2.3、创建表 2.4、删除表&#xff0c;删除之前要设置为禁用状态 2.5、添加数据 2.6、获取命令表空间 / tables列表 2.7、get方法查看表的内容 2.8、scan方法…

腾势D9改装来了,帮大家总结了一些需要改装的项目

最近腾势D9真的太火了&#xff0c;不仅外观霸气&#xff0c;内饰也是非常豪华。 1月份销量在MPV里已经排名第二了&#xff0c;性价比很高。 这边整理了一些改装项目供大家参考&#xff0c;有什么想法可以评论区一起讨论哦1. 电吸门 有车主吐槽车门难关&#xff0c;由于车内空间…

计算机网络:ICMP协议

网际控制报文协议ICMP ICMP协议支持主机或者路由器差错报告和网络探询 类型表明ICMP报文是哪类检验和&#xff1a;检验整个ICMP报文ICMP报文可分为ICMP差错报文和ICMP询问报文。 ICMP差错报告报文 终点不可达&#xff1a;当路由器或者主机不能交付数据报时&#xff0c;向源站…

Spring - Spring框架概述面试题总结

文章目录01. 什么是Spring&#xff1f;02. Spring框架的设计目标&#xff0c;设计理念&#xff0c;和核心是什么&#xff1f;03. Spring的优点是什么&#xff1f;04. Spring框架中都用到了哪些设计模式&#xff1f;05. Spring有哪些应用场景?06. Spring由哪些模块组成&#xf…

基于DDD的微服务落地

DDD四层架构对实时性要求高的强一致性业务场景&#xff0c;可采取分布式事务。分布式事务有性能代价&#xff0c;在设计时需要平衡考虑业务拆分、数据一致性、性能和实现的复杂度&#xff0c;尽量避免分布式事务的产生。领域事件驱动的异步方式是分布式架构常用的设计方式&…