ZhipengCai / Demo---Practical-optimal-registration-of-terrestrial-LiDAR-scan-pairs

67 stars 17 forks source link

Issue when running "make" #1

Closed hagianga21 closed 5 years ago

hagianga21 commented 5 years ago

Hi, thank you so much for your code. Could you help me cause I met a problem. I installed all Pre-requisites. And I can run "cmake .." However, when I run make. I got the problem. I think the reason maybe come from complier. I use gcc version 5.4.0 Ubuntu 16.04. They say that error: ‘iota’ is not a member of ‘std’, error: ‘begin’ is not a member of ‘std’ The problem is:

`[ 7%] Building CXX object CMakeFiles/4DOFReg.dir/src/globReg4D/globReg4D.cpp.o In file included from /home/giang/Documents/UbuntuProject/Demo---Practical-optimal-registration-of-terrestrial-LiDAR-scan-pairs-master/src/globReg4D/../../include/globReg4D/../util/inputGen.h:16:0, from /home/giang/Documents/UbuntuProject/Demo---Practical-optimal-registration-of-terrestrial-LiDAR-scan-pairs-master/src/globReg4D/../../include/globReg4D/globReg4D.h:4, from /home/giang/Documents/UbuntuProject/Demo---Practical-optimal-registration-of-terrestrial-LiDAR-scan-pairs-master/src/globReg4D/globReg4D.cpp:1: /home/giang/Documents/UbuntuProject/Demo---Practical-optimal-registration-of-terrestrial-LiDAR-scan-pairs-master/src/globReg4D/../../include/globReg4D/../util/../globReg4D/include/reg_common.h:31:0: warning: "NDEBUG" redefined

define NDEBUG

^

:0:0: note: this is the location of the previous definition /home/giang/Documents/UbuntuProject/Demo---Practical-optimal-registration-of-terrestrial-LiDAR-scan-pairs-master/src/globReg4D/globReg4D.cpp: In function ‘int GLOBREG::RANSAC(pcl::PointCloud::Ptr, pcl::PointCloud::Ptr, std::vector&, double, reg::Transform3&)’: /home/giang/Documents/UbuntuProject/Demo---Practical-optimal-registration-of-terrestrial-LiDAR-scan-pairs-master/src/globReg4D/globReg4D.cpp:135:32: error: ‘>>’ should be ‘> >’ within a nested template argument list std::vector> pool(corr.size()); ^ /home/giang/Documents/UbuntuProject/Demo---Practical-optimal-registration-of-terrestrial-LiDAR-scan-pairs-master/src/globReg4D/globReg4D.cpp:138:9: error: ‘iota’ is not a member of ‘std’ std::iota( std::begin( tmp ), std::end( tmp ), i+1 ); ^ /home/giang/Documents/UbuntuProject/Demo---Practical-optimal-registration-of-terrestrial-LiDAR-scan-pairs-master/src/globReg4D/globReg4D.cpp:138:20: error: ‘begin’ is not a member of ‘std’ std::iota( std::begin( tmp ), std::end( tmp ), i+1 ); ^ /home/giang/Documents/UbuntuProject/Demo---Practical-optimal-registration-of-terrestrial-LiDAR-scan-pairs-master/src/globReg4D/globReg4D.cpp:138:20: note: suggested alternatives: In file included from /home/giang/.conda/envs/cs231n/include/boost/foreach.hpp:74:0, from /home/giang/.conda/envs/cs231n/include/pcl-1.9/pcl/conversions.h:56, from /home/giang/.conda/envs/cs231n/include/pcl-1.9/pcl/common/io.h:47, from /home/giang/.conda/envs/cs231n/include/pcl-1.9/pcl/kdtree/kdtree.h:46, from /home/giang/.conda/envs/cs231n/include/pcl-1.9/pcl/kdtree/kdtree_flann.h:44, from /home/giang/Documents/UbuntuProject/Demo---Practical-optimal-registration-of-terrestrial-LiDAR-scan-pairs-master/src/globReg4D/../../include/globReg4D/../util/inputGen.h:7, from /home/giang/Documents/UbuntuProject/Demo---Practical-optimal-registration-of-terrestrial-LiDAR-scan-pairs-master/src/globReg4D/../../include/globReg4D/globReg4D.h:4, from /home/giang/Documents/UbuntuProject/Demo---Practical-optimal-registration-of-terrestrial-LiDAR-scan-pairs-master/src/globReg4D/globReg4D.cpp:1: /home/giang/.conda/envs/cs231n/include/boost/range/begin.hpp:106:77: note: ‘boost::range_adl_barrier::begin’ NSTEXPR inline BOOST_DEDUCED_TYPENAME range_iterator::type begin( cons ^ In file included from /home/giang/.conda/envs/cs231n/include/boost/mpl/vector/aux_/begin_end.hpp:21:0, from /home/giang/.conda/envs/cs231n/include/boost/mpl/vector/vector0.hpp:31, from /home/giang/.conda/envs/cs231n/include/boost/mpl/vector/vector10.hpp:18, from /home/giang/.conda/envs/cs231n/include/boost/mpl/vector/vector20.hpp:18, from /home/giang/.conda/envs/cs231n/include/boost/mpl/vector.hpp:36, from /home/giang/.conda/envs/cs231n/include/pcl-1.9/pcl/register_point_struct.h:58, from /home/giang/.conda/envs/cs231n/include/pcl-1.9/pcl/point_types.h:44, from /home/giang/Documents/UbuntuProject/Demo---Practical-optimal-registration-of-terrestrial-LiDAR-scan-pairs-master/src/globReg4D/../../include/globReg4D/../util/inputGen.h:6, from /home/giang/Documents/UbuntuProject/Demo---Practical-optimal-registration-of-terrestrial-LiDAR-scan-pairs-master/src/globReg4D/../../include/globReg4D/globReg4D.h:4, from /home/giang/Documents/UbuntuProject/Demo---Practical-optimal-registration-of-terrestrial-LiDAR-scan-pairs-master/src/globReg4D/globReg4D.cpp:1: /home/giang/.conda/envs/cs231n/include/boost/mpl/begin_end_fwd.hpp:22:38: note: ‘boost::mpl::begin’ template< typename Sequence > struct begin; ^ In file included from /home/giang/.conda/envs/cs231n/include/boost/foreach.hpp:74:0, from /home/giang/.conda/envs/cs231n/include/pcl-1.9/pcl/conversions.h:56, from /home/giang/.conda/envs/cs231n/include/pcl-1.9/pcl/common/io.h:47, from /home/giang/.conda/envs/cs231n/include/pcl-1.9/pcl/kdtree/kdtree.h:46, from /home/giang/.conda/envs/cs231n/include/pcl-1.9/pcl/kdtree/kdtree_flann.h:44, from /home/giang/Documents/UbuntuProject/Demo---Practical-optimal-registration-of-terrestrial-LiDAR-scan-pairs-master/src/globReg4D/../../include/globReg4D/../util/inputGen.h:7, from /home/giang/Documents/UbuntuProject/Demo---Practical-optimal-registration-of-terrestrial-LiDAR-scan-pairs-master/src/globReg4D/../../include/globReg4D/globReg4D.h:4, from /home/giang/Documents/UbuntuProject/Demo---Practical-optimal-registration-of-terrestrial-LiDAR-scan-pairs-master/src/globReg4D/globReg4D.cpp:1: /home/giang/.conda/envs/cs231n/include/boost/range/begin.hpp:106:77: note: ‘boost::range_adl_barrier::begin’ NSTEXPR inline BOOST_DEDUCED_TYPENAME range_iterator::type begin( cons ^ In file included from /home/giang/.conda/envs/cs231n/include/pcl-1.9/pcl/conversions.h:56:0, from /home/giang/.conda/envs/cs231n/include/pcl-1.9/pcl/common/io.h:47, from /home/giang/.conda/envs/cs231n/include/pcl-1.9/pcl/kdtree/kdtree.h:46, from /home/giang/.conda/envs/cs231n/include/pcl-1.9/pcl/kdtree/kdtree_flann.h:44, from /home/giang/Documents/UbuntuProject/Demo---Practical-optimal-registration-of-terrestrial-LiDAR-scan-pairs-master/src/globReg4D/../../include/globReg4D/../util/inputGen.h:7, from /home/giang/Documents/UbuntuProject/Demo---Practical-optimal-registration-of-terrestrial-LiDAR-scan-pairs-master/src/globReg4D/../../include/globReg4D/globReg4D.h:4, from /home/giang/Documents/UbuntuProject/Demo---Practical-optimal-registration-of-terrestrial-LiDAR-scan-pairs-master/src/globReg4D/globReg4D.cpp:1: /home/giang/.conda/envs/cs231n/include/boost/foreach.hpp:689:1: note: ‘boost::foreach_detail_::begin’ begin(auto_any_t col, type2type *, boost::mpl::true_ *) // null-termina ^ In file included from /home/giang/.conda/envs/cs231n/include/boost/fusion/iterator/segmented_iterator.hpp:13:0, from /home/giang/.conda/envs/cs231n/include/boost/fusion/sequence/intrinsic/detail/segmented_end.hpp:12, from /home/giang/.conda/envs/cs231n/include/boost/fusion/sequence/intrinsic/end.hpp:18, from /home/giang/.conda/envs/cs231n/include/boost/fusion/mpl/back.hpp:12, from /home/giang/.conda/envs/cs231n/include/boost/fusion/mpl.hpp:15, from /home/giang/.conda/envs/cs231n/include/boost/fusion/include/mpl.hpp:12, from /home/giang/.conda/envs/cs231n/include/pcl-1.9/pcl/common/impl/accumulators.hpp:44, from /home/giang/.conda/envs/cs231n/include/pcl-1.9/pcl/common/centroid.h:954, from /home/giang/.conda/envs/cs231n/include/pcl-1.9/pcl/features/normal_3d.h:45, from /home/giang/.conda/envs/cs231n/include/pcl-1.9/pcl/keypoints/impl/iss_3d.hpp:42, from /home/giang/.conda/envs/cs231n/include/pcl-1.9/pcl/keypoints/iss_3d.h:274, from /home/giang/Documents/UbuntuProject/Demo---Practical-optimal-registration-of-terrestrial-LiDAR-scan-pairs-master/src/globReg4D/../../include/globReg4D/../util/inputGen.h:9, from /home/giang/Documents/UbuntuProject/Demo---Practical-optimal-registration-of-terrestrial-LiDAR-scan-pairs-master/src/globReg4D/../../include/globReg4D/globReg4D.h:4, from /home/giang/Documents/UbuntuProject/Demo---Practical-optimal-registration-of-terrestrial-LiDAR-scan-pairs-master/src/globReg4D/globReg4D.cpp:1: /home/giang/.conda/envs/cs231n/include/boost/fusion/sequence/intrinsic/begin.hpp:92:5: note: ‘boost::fusion::begin’ begin(Sequence const& seq) ^ In file included from /home/giang/.conda/envs/cs231n/include/boost/fusion/sequence/intrinsic/value_at.hpp:16:0, from /home/giang/.conda/envs/cs231n/include/boost/fusion/mpl/at.hpp:12, from /home/giang/.conda/envs/cs231n/include/boost/fusion/mpl.hpp:14, from /home/giang/.conda/envs/cs231n/include/boost/fusion/include/mpl.hpp:12, from /home/giang/.conda/envs/cs231n/include/pcl-1.9/pcl/common/impl/accumulators.hpp:44, from /home/giang/.conda/envs/cs231n/include/pcl-1.9/pcl/common/centroid.h:954, from /home/giang/.conda/envs/cs231n/include/pcl-1.9/pcl/features/normal_3d.h:45, from /home/giang/.conda/envs/cs231n/include/pcl-1.9/pcl/keypoints/impl/iss_3d.hpp:42, from /home/giang/.conda/envs/cs231n/include/pcl-1.9/pcl/keypoints/iss_3d.h:274, from /home/giang/Documents/UbuntuProject/Demo---Practical-optimal-registration-of-terrestrial-LiDAR-scan-pairs-master/src/globReg4D/../../include/globReg4D/../util/inputGen.h:9, from /home/giang/Documents/UbuntuProject/Demo---Practical-optimal-registration-of-terrestrial-LiDAR-scan-pairs-master/src/globReg4D/../../include/globReg4D/globReg4D.h:4, from /home/giang/Documents/UbuntuProject/Demo---Practical-optimal-registration-of-terrestrial-LiDAR-scan-pairs-master/src/globReg4D/globReg4D.cpp:1: /home/giang/.conda/envs/cs231n/include/boost/fusion/sequence/intrinsic_fwd.hpp:62:16: note: ‘boost::fusion::result_of::begin’ struct begin; ^ /home/giang/Documents/UbuntuProject/Demo---Practical-optimal-registration-of-terrestrial-LiDAR-scan-pairs-master/src/globReg4D/globReg4D.cpp:138:39: error: ‘end’ is not a member of ‘std’ std::iota( std::begin( tmp ), std::end( tmp ), i+1 ); ^ /home/giang/Documents/UbuntuProject/Demo---Practical-optimal-registration-of-terrestrial-LiDAR-scan-pairs-master/src/globReg4D/globReg4D.cpp:138:39: note: suggested alternatives: In file included from /home/giang/.conda/envs/cs231n/include/boost/foreach.hpp:73:0, from /home/giang/.conda/envs/cs231n/include/pcl-1.9/pcl/conversions.h:56, from /home/giang/.conda/envs/cs231n/include/pcl-1.9/pcl/common/io.h:47, from /home/giang/.conda/envs/cs231n/include/pcl-1.9/pcl/kdtree/kdtree.h:46, from /home/giang/.conda/envs/cs231n/include/pcl-1.9/pcl/kdtree/kdtree_flann.h:44, from /home/giang/Documents/UbuntuProject/Demo---Practical-optimal-registration-of-terrestrial-LiDAR-scan-pairs-master/src/globReg4D/../../include/globReg4D/../util/inputGen.h:7, from /home/giang/Documents/UbuntuProject/Demo---Practical-optimal-registration-of-terrestrial-LiDAR-scan-pairs-master/src/globReg4D/../../include/globReg4D/globReg4D.h:4, from /home/giang/Documents/UbuntuProject/Demo---Practical-optimal-registration-of-terrestrial-LiDAR-scan-pairs-master/src/globReg4D/globReg4D.cpp:1: /home/giang/.conda/envs/cs231n/include/boost/range/end.hpp:100:77: note: ‘boost::range_adl_barrier::end’ NSTEXPR inline BOOST_DEDUCED_TYPENAME range_iterator::type end( const ^ In file included from /home/giang/.conda/envs/cs231n/include/boost/mpl/vector/aux_/begin_end.hpp:21:0, from /home/giang/.conda/envs/cs231n/include/boost/mpl/vector/vector0.hpp:31, from /home/giang/.conda/envs/cs231n/include/boost/mpl/vector/vector10.hpp:18, from /home/giang/.conda/envs/cs231n/include/boost/mpl/vector/vector20.hpp:18, from /home/giang/.conda/envs/cs231n/include/boost/mpl/vector.hpp:36, from /home/giang/.conda/envs/cs231n/include/pcl-1.9/pcl/register_point_struct.h:58, from /home/giang/.conda/envs/cs231n/include/pcl-1.9/pcl/point_types.h:44, from /home/giang/Documents/UbuntuProject/Demo---Practical-optimal-registration-of-terrestrial-LiDAR-scan-pairs-master/src/globReg4D/../../include/globReg4D/../util/inputGen.h:6, from /home/giang/Documents/UbuntuProject/Demo---Practical-optimal-registration-of-terrestrial-LiDAR-scan-pairs-master/src/globReg4D/../../include/globReg4D/globReg4D.h:4, from /home/giang/Documents/UbuntuProject/Demo---Practical-optimal-registration-of-terrestrial-LiDAR-scan-pairs-master/src/globReg4D/globReg4D.cpp:1: /home/giang/.conda/envs/cs231n/include/boost/mpl/begin_end_fwd.hpp:23:38: note: ‘boost::mpl::end’ template< typename Sequence > struct end; ^ In file included from /home/giang/.conda/envs/cs231n/include/boost/foreach.hpp:73:0, from /home/giang/.conda/envs/cs231n/include/pcl-1.9/pcl/conversions.h:56, from /home/giang/.conda/envs/cs231n/include/pcl-1.9/pcl/common/io.h:47, from /home/giang/.conda/envs/cs231n/include/pcl-1.9/pcl/kdtree/kdtree.h:46, from /home/giang/.conda/envs/cs231n/include/pcl-1.9/pcl/kdtree/kdtree_flann.h:44, from /home/giang/Documents/UbuntuProject/Demo---Practical-optimal-registration-of-terrestrial-LiDAR-scan-pairs-master/src/globReg4D/../../include/globReg4D/../util/inputGen.h:7, from /home/giang/Documents/UbuntuProject/Demo---Practical-optimal-registration-of-terrestrial-LiDAR-scan-pairs-master/src/globReg4D/../../include/globReg4D/globReg4D.h:4, from /home/giang/Documents/UbuntuProject/Demo---Practical-optimal-registration-of-terrestrial-LiDAR-scan-pairs-master/src/globReg4D/globReg4D.cpp:1: /home/giang/.conda/envs/cs231n/include/boost/range/end.hpp:100:77: note: ‘boost::range_adl_barrier::end’ NSTEXPR inline BOOST_DEDUCED_TYPENAME range_iterator::type end( const ^ In file included from /home/giang/.conda/envs/cs231n/include/pcl-1.9/pcl/conversions.h:56:0, from /home/giang/.conda/envs/cs231n/include/pcl-1.9/pcl/common/io.h:47, from /home/giang/.conda/envs/cs231n/include/pcl-1.9/pcl/kdtree/kdtree.h:46, from /home/giang/.conda/envs/cs231n/include/pcl-1.9/pcl/kdtree/kdtree_flann.h:44, from /home/giang/Documents/UbuntuProject/Demo---Practical-optimal-registration-of-terrestrial-LiDAR-scan-pairs-master/src/globReg4D/../../include/globReg4D/../util/inputGen.h:7, from /home/giang/Documents/UbuntuProject/Demo---Practical-optimal-registration-of-terrestrial-LiDAR-scan-pairs-master/src/globReg4D/../../include/globReg4D/globReg4D.h:4, from /home/giang/Documents/UbuntuProject/Demo---Practical-optimal-registration-of-terrestrial-LiDAR-scan-pairs-master/src/globReg4D/globReg4D.cpp:1: /home/giang/.conda/envs/cs231n/include/boost/foreach.hpp:729:1: note: ‘boost::foreach_detail_::end’ end(auto_any_t, type2type *, boost::mpl::true_ *) // null-terminated C- ^ In file included from /home/giang/.conda/envs/cs231n/include/boost/fusion/mpl/back.hpp:12:0, from /home/giang/.conda/envs/cs231n/include/boost/fusion/mpl.hpp:15, from /home/giang/.conda/envs/cs231n/include/boost/fusion/include/mpl.hpp:12, from /home/giang/.conda/envs/cs231n/include/pcl-1.9/pcl/common/impl/accumulators.hpp:44, from /home/giang/.conda/envs/cs231n/include/pcl-1.9/pcl/common/centroid.h:954, from /home/giang/.conda/envs/cs231n/include/pcl-1.9/pcl/features/normal_3d.h:45, from /home/giang/.conda/envs/cs231n/include/pcl-1.9/pcl/keypoints/impl/iss_3d.hpp:42, from /home/giang/.conda/envs/cs231n/include/pcl-1.9/pcl/keypoints/iss_3d.h:274, from /home/giang/Documents/UbuntuProject/Demo---Practical-optimal-registration-of-terrestrial-LiDAR-scan-pairs-master/src/globReg4D/../../include/globReg4D/../util/inputGen.h:9, from /home/giang/Documents/UbuntuProject/Demo---Practical-optimal-registration-of-terrestrial-LiDAR-scan-pairs-master/src/globReg4D/../../include/globReg4D/globReg4D.h:4, from /home/giang/Documents/UbuntuProject/Demo---Practical-optimal-registration-of-terrestrial-LiDAR-scan-pairs-master/src/globReg4D/globReg4D.cpp:1: /home/giang/.conda/envs/cs231n/include/boost/fusion/sequence/intrinsic/end.hpp:92:5: note: ‘boost::fusion::end’ end(Sequence const& seq) ^ In file included from /home/giang/.conda/envs/cs231n/include/boost/fusion/sequence/intrinsic/value_at.hpp:16:0, from /home/giang/.conda/envs/cs231n/include/boost/fusion/mpl/at.hpp:12, from /home/giang/.conda/envs/cs231n/include/boost/fusion/mpl.hpp:14, from /home/giang/.conda/envs/cs231n/include/boost/fusion/include/mpl.hpp:12, from /home/giang/.conda/envs/cs231n/include/pcl-1.9/pcl/common/impl/accumulators.hpp:44, from /home/giang/.conda/envs/cs231n/include/pcl-1.9/pcl/common/centroid.h:954, from /home/giang/.conda/envs/cs231n/include/pcl-1.9/pcl/features/normal_3d.h:45, from /home/giang/.conda/envs/cs231n/include/pcl-1.9/pcl/keypoints/impl/iss_3d.hpp:42, from /home/giang/.conda/envs/cs231n/include/pcl-1.9/pcl/keypoints/iss_3d.h:274, from /home/giang/Documents/UbuntuProject/Demo---Practical-optimal-registration-of-terrestrial-LiDAR-scan-pairs-master/src/globReg4D/../../include/globReg4D/../util/inputGen.h:9, from /home/giang/Documents/UbuntuProject/Demo---Practical-optimal-registration-of-terrestrial-LiDAR-scan-pairs-master/src/globReg4D/../../include/globReg4D/globReg4D.h:4, from /home/giang/Documents/UbuntuProject/Demo---Practical-optimal-registration-of-terrestrial-LiDAR-scan-pairs-master/src/globReg4D/globReg4D.cpp:1: /home/giang/.conda/envs/cs231n/include/boost/fusion/sequence/intrinsic_fwd.hpp:68:16: note: ‘boost::fusion::result_of::end’ struct end; ^ CMakeFiles/4DOFReg.dir/build.make:86: recipe for target 'CMakeFiles/4DOFReg.dir/src/globReg4D/globReg4D.cpp.o' failed make[2]: *** [CMakeFiles/4DOFReg.dir/src/globReg4D/globReg4D.cpp.o] Error 1 CMakeFiles/Makefile2:67: recipe for target 'CMakeFiles/4DOFReg.dir/all' failed make[1]: *** [CMakeFiles/4DOFReg.dir/all] Error 2 Makefile:83: recipe for target 'all' failed make: *** [all] Error 2 `
hagianga21 commented 5 years ago

I can fix it now, I updated to gcc v6 and it can work, it spent my whole day for finding a way to install libraries as well as fixing all of them to make it work.