我正在使用链接“https://github.com/lixiny/handeye-calibration-ros”进行校准。
当我在
catkin_make
下运行 src/ Handeye-Calibration-ROS
时,它给了我以下错误:
/usr/include/pcl-1.10/pcl/common/impl/io.hpp:272:33: error: use of ‘auto’ in lambda parameter declaration only available with ‘-std=c++14’ or ‘-std=gnu++14’
和命令
catkin_make
以 PCL 错误结束:
make[2]: *** [camera_driver/CMakeFiles/realsense2_driver.dir/build.make:76: camera_driver/CMakeFiles/realsense2_driver.dir/src/realsense2_driver.cpp.o] Error 1
make[1]: *** [CMakeFiles/Makefile2:2053: camera_driver/CMakeFiles/realsense2_driver.dir/all] Error 2
make: *** [Makefile:146: all] Error 2
Invoking "make -j24 -l24" failed
我尝试了
CXXFLAGS=--std=gnu++14
,仍然是同样的错误。
我需要在哪个文件中更改C++的值?
根据Cmake的网站,您可以使用以下方式设置c++标准:
set_property(TARGET tgt PROPERTY CXX_STANDARD 14)
如果您想修改 makefile 本身,添加 c++ 标志应该会生成类似于以下内容的命令:
g++ -std=c++14(or gnu++14) main.cpp -o main