2

我整个早上都在尝试在 PCL 网站上运行显示的点云库示例之一(http://pointclouds.org/documentation/tutorials/using_pcl_pcl_config.php#using-pcl-pcl-config )不能让它运行!

这就是我所做的:我已经在我的计算机上安装了用于 MSVS 2010(64 位)的 Point Cloud 库 PCL 1.6.0 All-In-One Installer,然后,安装了我发现需要的几个库(Boost 和 Eigen) . 之后,我添加了 MS Visual Studio 2010 中所需的所有依赖项和库(PLC、boost 和 eigen),但我仍然遇到这些烦人的错误:

(我也尝试过在 Windows 上使用 CMake gui,但它在生成项目时报告了很多错误)

1>PCL.obj:错误 LNK2019:无法解析的外部符号“void __cdecl pcl::console::print(enum pcl::console::VERBOSITY_LEVEL,char const *,...)”(?print@console@pcl@@ YAXW4VERBOSITY_LEVEL@12@PBDZZ) 在函数 _main 中引用

1>PCL.obj : 错误 LNK2001: 无法解析的外部符号“public: virtual int __thiscall pcl::PCDReader::readHeader(class std::basic_string,class std::allocator > const &,struct sensor_msgs::PointCloud2 &,class Eigen ::Matrix &,class Eigen::Quaternion &,int &,int &,unsigned int &,int)" (?readHeader@PCDReader@pcl@@UAEHABV?$basic_string@DU?$char_traits@D@std@@V ?$allocator@D@2@@std@@AAUPointCloud2@sensor_msgs@@AAV?$Matrix@M$03$00$0A@$03$00@Eigen@@AAV?$Quaternion@M$0A@@8@AAH4AAIH@Z)

1>PCL.obj : 错误 LNK2001: 无法解析的外部符号“public: virtual int __thiscall pcl::PCDReader::read(class std::basic_string,class std::allocator > const &,struct sensor_msgs::PointCloud2 &,class Eigen ::Matrix &,class Eigen::Quaternion &,int &,int)" (?read@PCDReader@pcl@@UAEHABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2 @@std@@AAUPointCloud2@sensor_msgs@@AAV?$Matrix@M$03$00$0A@$03$00@Eigen@@AAV?$Quaternion@M$0A@@8@AAHH@Z)

任何,任何帮助将不胜感激。这件事花了我这么多小时,让我发疯。

谢谢!!

4

1 回答 1

2

你有一个链接器错误,所以你缺少一个 lib 文件或者你没有链接它们。或者您正在混合 32 位和 64 位配置和库。

您是否已完成我在此答案中描述的所有步骤?

我建议使用一体化安装程序,除非您真的知道 PCL 如何以及为什么需要 3rd 方库。

于 2013-05-23T13:28:36.733 回答