vs安装pcl库,遇到的问题总结(全)

简介: vs安装pcl库,遇到的问题总结(全)

这里假设vs、pcl已经全部安装,并且相关的包含目录和库目录也都配置完成,在测试时可能问题的总结如下:

1. error C4996: ‘pcl::SAC_SAMPLE_SIZE’: This map is deprecated and is kept only to prevent breaking existing user code. Starting from PCL 1.8.0 model sample size is a protected member of the SampleConsensusModel class

或者

error C4996: ‘vtkMapper::ImmediateModeRenderingOff’:


25.png

解决方法:

打开项目属性页>C/C++>常规>SDL检查(设置为否)。

32.png

2.“pop_t”:找不到标识符”

可能行数有些变化,自己找到就行。

26.png

这里另外需要主要的是,可能这个文件受保护,右键->打开文件所在的位置->右键属性->

27.png

编辑->选择Users->修改->确定

28.png


3._findnext,_finddata_t在64位系统操作失败

29.png


4.找不到OpenNI2

可能在刚开始安装的时候,安装位置错了,找到OpenNI2的安装包xxx.msi,然后重新安装(首先删除安装错的位置,一般也在c盘,可以手动搜索一下),位置选择如下,安装成功后如下:

30.png

5.error LNK2001: 无法解析的外部符号 H5T_STD_REF_OBJ_g

在C++工程中,添加hdf5时,将include与lib文件分别添加进路径后编译依然报错,错误如标题所示,可以试着在项目属性--C/C++--预处理器--预处理器定义列表中添加“H5_BUILT_AS_DYNAMIC_LIB”,保存,重新编译即可。

31.png


6.viewer->addArrow内存泄漏问题

32.png

1)在属性的附加依赖项添加 opengl32.lib

2)在cpp头部添加

#include <vtkAutoInit.h>       
VTK_MODULE_INIT(vtkRenderingOpenGL);
VTK_MODULE_INIT(vtkInteractionStyle);
VTK_MODULE_INIT(vtkRenderingFreeType);

7.错误 LNK2001 无法解析的外部符号 __imp_glBindTexture watermelon D:\gitAllPro\watermelon\vtkRenderingOpenGL-8.1.lib(vtkOpenGLTexture.obj)

问题的解决方法同6


8.VS2015/2017配置HDF5

HDF5官网:http://portal.hdfgroup.org/display/support/HDF5+1.8.20

不过官网下载比较慢,可以在一下链接进行下载:

https://download.csdn.net/download/qq_37534947/12667808

解压后如下:

33.png


msi安装即可,然后进行以下配置:

34.png


注意:包含目录和库目录是你自己安装后的相应位置,我这里是D盘,为了方便可以安装到C盘。


9.pcl::KdTreeFLANN…param_k_”错误

C2079 “pcl::KdTreeFLANN…param_k_”使用未定义的 struct“flann::SearchParams”


项目需要用到OpenCV和PCL,在分别单独添加现有属性时并不会报错,两个属性添加到统一项目时出现报上述错误。


查找了各种解决方案:比如:包含目录、库目录,代码包含include"···.hpp"等等解决方案,均没有得到解决。


后来发现属性加载要有顺序:这里使用kdtree时,调用的是PCL的库,把pcl属性(.props文件)移除,再重新添加(默认会添加首位),使其在OpenCV属性文件之前就解决了问题。如果两者直接添加到“附加依赖项”,也应该注意先后顺序。


35.png

这里遇到这样的问题,归根结底是PCL库和OpenCV库冲突的问题,两者都包含flann库,至于解决方案,应该有很多博客,以后遇到再搞。


10.4996_‘localtime’

解决方法:在报错的文件中添加

#pragma warning(disable:4996)


11.其他错误

参考:https://blog.csdn.net/qq_39758080/article/details/87454318

目录
相关文章
|
存储 算法 定位技术
PCL--点云配准--ICP使用
PCL--点云配准--ICP使用
PCL--点云配准--ICP使用
|
存储 数据采集 数据可视化
Open3d系列 | 1. Open3d实现点云数据读写、点云配准、点云法向量计算
Open3d系列 | 1. Open3d实现点云数据读写、点云配准、点云法向量计算
18033 1
Open3d系列 | 1. Open3d实现点云数据读写、点云配准、点云法向量计算
|
编译器 C++
错误 C1128 节数超过对象文件格式限制: 请使用 /bigobj 进行编译
错误 C1128 节数超过对象文件格式限制: 请使用 /bigobj 进行编译
2096 0
|
10月前
|
数据采集 索引 Python
Python Slice函数使用教程 - 详解与示例 | Python切片操作指南
Python中的`slice()`函数用于创建切片对象,以便对序列(如列表、字符串、元组)进行高效切片操作。它支持指定起始索引、结束索引和步长,提升代码可读性和灵活性。
|
人工智能 C++
初步编译QT5.15.2+VS2019+VTK8.2.0
本文介绍了在VS2019中编译QT 5.15.2和VTK 8.2.0的过程,包括编译结果、cmake库编译配置和cmake应用配置脚本,以及推荐的参考链接。
937 4
Cmake生成指定vs版本的工程文件
本文简单总结了使用 cmake 生成 visual studio 工程文件的过程
|
传感器 编解码 算法
Open3D Surface reconstruction 表面重建
Open3D Surface reconstruction 表面重建
973 4
|
JSON 算法 数据可视化
Open3d-Point cloud (点云)
Open3d-Point cloud (点云)
1978 6
|
数据可视化 Python
【PyQt5桌面应用开发】2.可视化界面编程步骤(超级详细)
【PyQt5桌面应用开发】2.可视化界面编程步骤(超级详细)
2907 1
|
Windows
解决windows下Qt Creator显示界面过大的问题
解决windows下Qt Creator显示界面过大的问题