当前位置: 首页 > news >正文

Ubuntu18安装新版本PCL-1.13,并和ROS自带PCL-1.8共存

文章目录

  • 1.安装新版本PCL-1.13
  • 2.在工程中使用新版本的PCL-1.13
  • 3.pcl-1.13误装到`/usr/local/`下如何卸载

1.安装新版本PCL-1.13

  • 下载PCL-1.13代码
    在这里插入图片描述

  • 修改CMakeLists.txt文件,不编译vtk相关的代码vtk的问题比较难解决,但是一般我们安装pcl都是为了一些新特性的算法,而vtk就是可视化相关的,所以不要这部分也可以。,搜寻CMakeLists.txt中搜索vtk关键字,将有关vtk的都注释掉,再cmake,这样一来有关可视化的module就不会build了,也不需要依赖vtk

# Reset VTK_FOUND to off
# set(VTK_FOUND OFF)
# # Find VTK - VTK has to be found before Qt, otherwise it can overwrite Qt variables
# option(WITH_VTK "Build VTK-Visualizations" TRUE)
# if(WITH_VTK)
#   if(ANDROID)
#     message(WARNING "VTK is not supported on Android.")
#   else()
#     include("${PCL_SOURCE_DIR}/cmake/pcl_find_vtk.cmake")
#   endif()
# endif()
  • 新建安装路径:新建安装目录,/home/cc/MyLibInstall/pcl-1.13。注意这里最好不要安装到系统根目录下,也就是默认的/usr/local/下,因为经过我测试发现在自己的电脑上,如果安装到了/usr/local/下,最后链接pcl的库的时候会默认链接到这个路径下的库,也就是自己新安装的pcl-1.13的库。但是绝大部分工程都是使用ROS自带的pcl-1.8的,这个时候虽然编译可以通过,但是运行的时候会出错。所以保险的方式就是不要安装到/usr/local/下,而是安装到自己的用户目录下,然后特殊的工程需要使用pcl-1.13的,那么就在CMakeLists.txt中手动指定PCL的路径;而其他的绝大多数工程使用PCL-1.8就不用动了,仍然会链接到ROS自带的pcl-1.8中。

  • 创建编译文件夹并cmake:进入代码文件夹,mkdir build新建build文件夹。然后配置安装目录,即cmake -DCMAKE_INSTALL_PREFIX=/home/cc/MyLibInstall/pcl-1.13 ..,注意最后有个..,表示编译的CMakeLists.txt文件在当前build文件夹的上一层目录下。

  • 最后make install即可:因为这里我们安装到用户家目录下的,而非根目录下,所以不用sudo

2.在工程中使用新版本的PCL-1.13

  • 一般来说使用ROS自带的pcl-1.18的时候都会使用如下命令:
find_package(catkin REQUIRED COMPONENTSpcl_conversionspcl_ros
)

这样就会找的默认安装的pcl-1.8

  • 使用新版本的pcl-1.13,则需要把上述的语句注释掉,然后手动寻找pcl的库。因此写成如下形式:
find_package(catkin REQUIRED COMPONENTS# pcl_conversions# pcl_ros
)
set(PCL_DIR "/home/cc/MyLibInstall/pcl-1.13/share/pcl-1.13")   # PCLConfig.cmake所在的文件夹
find_package(PCL 1.13.0 REQUIRED)

这样后面就可以全部链接到pcl-1.13了,而不会链接到pcl-1.8

3.pcl-1.13误装到/usr/local/下如何卸载

如果新版本pcl-1.13误装到/usr/local/下,其他工程都会优先链接到这个版本的pcl。此时可以参考这篇博客:linux删除cmake源码编译安装的库,删除安装的新版本pcl-1.13,然后按照前面的方法重新安装即可。

相关文章:

Ubuntu18安装新版本PCL-1.13,并和ROS自带PCL-1.8共存

文章目录1.安装新版本PCL-1.132.在工程中使用新版本的PCL-1.133.pcl-1.13误装到/usr/local/下如何卸载1.安装新版本PCL-1.13 下载PCL-1.13代码: 修改CMakeLists.txt文件,不编译vtk相关的代码:vtk的问题比较难解决,但是一般我们安…...

计算机图形学08:中点BH算法绘制抛物线(100x = y^2)

作者:非妃是公主 专栏:《计算机图形学》 博客地址:https://blog.csdn.net/myf_666 个性签:顺境不惰,逆境不馁,以心制境,万事可成。——曾国藩 文章目录专栏推荐专栏系列文章序一、算法原理二、…...

基于java的高校辅导员工作管理系统

摘 要网络技术的快速发展给各行各业带来了很大的突破,也给各行各业提供了一种新的管理模块,对于高校辅导员工作管理将是又一个传统管理到智能化信息管理的改革,设计高校辅导员工作管理系统的目的就是借助计算机让复杂的班级信息、学籍信息等管…...

字节3次都没裁掉的7年老测试。掌握设计业务与技术方案,打开上升通道!

前言职场中的那些魔幻操作,研发最烦的是哪个?“面对业务需求的时候,可能都听过这样一句话:这个很简单,直接开发,三天内上线;”朋友说:“产品听了流泪,测试见了崩溃&#…...

详细介绍关于链表【数据结构】

文章目录链表单链表尾插头插尾删第一种方式删除第二种头删查找pos之前插入pos位置删除pos后面插入pos位置后面删除链表 顺序表缺点: 空间不够了 需要扩容,但是扩容是有消耗的头部或中间位置需要插入或删除,需要挪动 ,但是挪动是…...

2.3 二分搜索技术

二分搜索算法是运用分治策略的典型例子。给定己排好府的 n个元素a10:n-1],现要在这n个元素中找出一特定元素3。首先较容易想到的是用顺序搜索方法,逐个比较a10:1-1]中元素,直至找出元素,或搜索遍整个数组后确定,不在其…...

RWEQ模型的土壤风蚀模数估算、其变化归因分析

土壤风蚀是一个全球性的环境问题。中国是世界上受土壤风蚀危害最严重的国家之一,土壤风蚀是中国干旱、半干旱及部分湿润地区土地荒漠化的首要过程。中国风蚀荒漠化面积达160.74104km2,占国土总面积的16.7%,严重影响这些地区的资源开发和社会经…...

学习streamlit-1

Streamlit A faster way to build and share data apps streamlit在几分钟内就可以将数据脚本转换为可共享的web应用程序,并且是纯python编程,无需前端经验。 快速开始 streamlit非常容易上手,运行demo只需2行代码: pip install…...

GPS定位知识介绍

GPS定位和网络定位 GPS定位需要卫星参与,设备借助搜到的卫星讯号,计算出设备的位置。网络定位是指利用基站、WIFI MAC,获取一个粗略的位置。3D定位和2D 定位 3D一般是指使用至少4颗以上卫星完成的定位。2D一般使用3颗卫星完成的定位过程。...

【Linux】理解Linux环境变量

🍎作者:阿润菜菜 📖专栏:Linux系统编程 初识环境变量 什么是环境变量 我们平常所用的Linux指令其实也是可执行程序,和我们自己写的二进制程序没什么两样,那么为什么我们在执行自己的程序的时候需要加上 ./…...

ISCSI块存储-集群

ISCSI块存储-集群 1、ISCSI概述 ISCSI与SCSI原理对比 底层都是硬盘 ISCSI第二层就是通过gateway/网络获取–>SCSI:是直连获取 常见的用于ISCSI服务的网络拓扑类型 SAN:Storage Area Network:存储区域网络; 多采用告诉光纤…...

11.Maxwell 部署

Maxwell 部署 一、环境准备 1、确保服务器上已经安装好了zookeeper、kafka、MySQL软件; (1)启动zookeeper: /usr/app/zookeeper3.4/bin/zkServer.sh start(2)启动三台主题的kafka 启动:bin/kafka-serv…...

一文速学-GBDT模型算法原理以及实现+Python项目实战

目录 前言 一、GBDT算法概述 1.决策树 2.Boosting 3.梯度提升 使用梯度上升找到最佳参数 二、GBDT算法原理 1.计算原理 2.预测原理 三、实例算法实现 1.模型训练阶段 1)初始化弱学习器 2)对于建立M棵分类回归树​: 四、Python实现 …...

前端——2.HTML基本结构标签

这篇文章我们从0来介绍一下HTML的相关标签内容 目录 1.HTML语法规范 1.1基本语法概述 1.2标签关系 2.HTML的基本结构标签 2.1第一个HTML网页 2.2基本结构标签总结 1.HTML语法规范 下面,我们来看一下HTML的语法规范的内容 1.1基本语法概述 首先&#xff0c…...

OAK深度相机使用不同镜头和本地视频流进行模型推理

编辑:OAK中国 首发:oakchina.cn 喜欢的话,请多多👍⭐️✍ 内容可能会不定期更新,官网内容都是最新的,请查看首发地址链接。 ▌前言 Hello,大家好,这里是OAK中国,我是助手…...

[项目] Boost搜索引擎

目录 1.项目相关背景 2.项目宏观原理 3.技术栈和项目环境 4.正排索引&&倒排索引 5.去标签与数据清洗 6.构建索引模块Index 6.1正排索引 6.2 建立倒排 jiebacpp使用 建立分词 7.搜索引擎模块Searcher Jsoncpp -- 通过jsoncpp进行序列化和反序列化 处理Cont…...

解决新版QGIS找不到Georeferencer插件

目录1. 问题分析1.1 去 Raster 找,没找到1.2 去插件搜,未搜到1.3 插件库里也搜不到2. 解决办法在 QGIS 3.30中,按常规办法,找不到 Georeferencer插件,它并没有被安装,在库中也找不到它, 请问问题…...

c---冒泡排序模拟qsort

一、冒泡排序 二、冒泡排序优化排各种类型数据 文章目录一、冒泡排序二、冒泡排序优化排各种类型数据冒泡排序 冒泡排序原理&#xff1a;两两相邻元素进行比较 初级版 void bulle_sort(int* a, int sz) {int i 0;for (int i 0; i < sz-1; i){int j 0; for (j 0; j…...

Java知识复习(十四)JS

1、数据类型 基本数据类型&#xff1a;null、undefinde、boolean、string、number、symbol&#xff08;ES6新增&#xff09;引用数据类型&#xff1a;Function、Array、Object、Map和Set&#xff08;ES6新增&#xff09; 2、let、var和const的区别 var定义的变量&#xff0c…...

代码随想录刷题-数组-移除元素

文章目录写在前面习题我的想法暴力解法双指针写在前面 本节对应代码随想录中&#xff1a;代码随想录 习题 题目链接&#xff1a; 27. 移除元素- 力扣&#xff08;LeetCode&#xff09; 给你一个数组 nums 和一个值 val&#xff0c;你需要原地移除所有数值等于 val 的元素&a…...

【网络】每天掌握一个Linux命令 - iftop

在Linux系统中&#xff0c;iftop是网络管理的得力助手&#xff0c;能实时监控网络流量、连接情况等&#xff0c;帮助排查网络异常。接下来从多方面详细介绍它。 目录 【网络】每天掌握一个Linux命令 - iftop工具概述安装方式核心功能基础用法进阶操作实战案例面试题场景生产场景…...

k8s从入门到放弃之Ingress七层负载

k8s从入门到放弃之Ingress七层负载 在Kubernetes&#xff08;简称K8s&#xff09;中&#xff0c;Ingress是一个API对象&#xff0c;它允许你定义如何从集群外部访问集群内部的服务。Ingress可以提供负载均衡、SSL终结和基于名称的虚拟主机等功能。通过Ingress&#xff0c;你可…...

从零实现富文本编辑器#5-编辑器选区模型的状态结构表达

先前我们总结了浏览器选区模型的交互策略&#xff0c;并且实现了基本的选区操作&#xff0c;还调研了自绘选区的实现。那么相对的&#xff0c;我们还需要设计编辑器的选区表达&#xff0c;也可以称为模型选区。编辑器中应用变更时的操作范围&#xff0c;就是以模型选区为基准来…...

【算法训练营Day07】字符串part1

文章目录 反转字符串反转字符串II替换数字 反转字符串 题目链接&#xff1a;344. 反转字符串 双指针法&#xff0c;两个指针的元素直接调转即可 class Solution {public void reverseString(char[] s) {int head 0;int end s.length - 1;while(head < end) {char temp …...

【2025年】解决Burpsuite抓不到https包的问题

环境&#xff1a;windows11 burpsuite:2025.5 在抓取https网站时&#xff0c;burpsuite抓取不到https数据包&#xff0c;只显示&#xff1a; 解决该问题只需如下三个步骤&#xff1a; 1、浏览器中访问 http://burp 2、下载 CA certificate 证书 3、在设置--隐私与安全--…...

令牌桶 滑动窗口->限流 分布式信号量->限并发的原理 lua脚本分析介绍

文章目录 前言限流限制并发的实际理解限流令牌桶代码实现结果分析令牌桶lua的模拟实现原理总结&#xff1a; 滑动窗口代码实现结果分析lua脚本原理解析 限并发分布式信号量代码实现结果分析lua脚本实现原理 双注解去实现限流 并发结果分析&#xff1a; 实际业务去理解体会统一注…...

算法岗面试经验分享-大模型篇

文章目录 A 基础语言模型A.1 TransformerA.2 Bert B 大语言模型结构B.1 GPTB.2 LLamaB.3 ChatGLMB.4 Qwen C 大语言模型微调C.1 Fine-tuningC.2 Adapter-tuningC.3 Prefix-tuningC.4 P-tuningC.5 LoRA A 基础语言模型 A.1 Transformer &#xff08;1&#xff09;资源 论文&a…...

处理vxe-table 表尾数据是单独一个接口,表格tableData数据更新后,需要点击两下,表尾才是正确的

修改bug思路&#xff1a; 分别把 tabledata 和 表尾相关数据 console.log() 发现 更新数据先后顺序不对 settimeout延迟查询表格接口 ——测试可行 升级↑&#xff1a;async await 等接口返回后再开始下一个接口查询 ________________________________________________________…...

第2篇:BLE 广播与扫描机制详解

本文是《BLE 协议从入门到专家》专栏第二篇,专注于解析 BLE 广播(Advertising)与扫描(Scanning)机制。我们将从协议层结构、广播包格式、设备发现流程、控制器行为、开发者 API、广播冲突与多设备调度等方面,全面拆解这一 BLE 最基础也是最关键的通信机制。 一、什么是 B…...

TI德州仪器TPS3103K33DBVR低功耗电压监控器IC电源管理芯片详细解析

1. 基本介绍 TPS3103K33DBVR 是 德州仪器&#xff08;Texas Instruments, TI&#xff09; 推出的一款 低功耗电压监控器&#xff08;Supervisor IC&#xff09;&#xff0c;属于 电源管理芯片&#xff08;PMIC&#xff09; 类别&#xff0c;主要用于 系统复位和电压监测。 2. …...