【发布时间】:2014-10-02 19:35:06
【问题描述】:
我按照site 的建议安装了所有依赖项和预编译的 PCL 库。
安装完所有东西后,我想按照this 教程生成一个项目。
执行“make”命令后,我收到几个警告和以下两个错误:
37 warnings generated.
Linking CXX executable pcd_write_test
Undefined symbols for architecture x86_64:
"pcl::PCDWriter::writeASCII(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&, sensor_msgs::PointCloud2 const&, Eigen::Matrix<float, 4, 1, 0, 4, 1> const&, Eigen::Quaternion<float, 0> const&, int)", referenced from:
pcl::PCDWriter::write(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&, sensor_msgs::PointCloud2 const&, Eigen::Matrix<float, 4, 1, 0, 4, 1> const&, Eigen::Quaternion<float, 0> const&, bool) in pcd_write.cpp.o
"pcl::PCDWriter::writeBinary(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&, sensor_msgs::PointCloud2 const&, Eigen::Matrix<float, 4, 1, 0, 4, 1> const&, Eigen::Quaternion<float, 0> const&)", referenced from:
pcl::PCDWriter::write(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&, sensor_msgs::PointCloud2 const&, Eigen::Matrix<float, 4, 1, 0, 4, 1> const&, Eigen::Quaternion<float, 0> const&, bool) in pcd_write.cpp.o
ld: symbol(s) not found for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)
make[2]: *** [pcd_write_test] Error 1
make[1]: *** [CMakeFiles/pcd_write_test.dir/all] Error 2
make: *** [all] Error 2
有人对如何解决这个问题有任何建议吗?
我使用的是 Mac OS X 10.9.4。
【问题讨论】:
-
我在这个 [thread][1] 中找到了解决方案。 [1]:stackoverflow.com/questions/16318961/…
-
你最后找到解决办法了吗?我有完全相同的问题。
-
是的,我在上面的链接中找到了解决方案(第一条评论)。
-
我看过了,但是更改 C++ 语言方言和/或 C++ 标准库对我来说没有任何改变。