Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

build error against ROS pcl 1.7.1 or standalone 1.8.1 #1

Open
FPSychotic opened this issue May 12, 2021 · 1 comment
Open

build error against ROS pcl 1.7.1 or standalone 1.8.1 #1

FPSychotic opened this issue May 12, 2021 · 1 comment

Comments

@FPSychotic
Copy link

Hi this is the error I received in my ast try to install it. it is the closest one I got.
arm64, Jetson Xavier NX, pcl 1.8 I think was compiled with cuda support and 1.7.1 is from melodic .deb

[100%] Building CXX object semmapping-master/CMakeFiles/mapping.dir/src/semanticmap.cpp.o
In file included from /home/nx/semmap_ws/src/semmapping-master/src/semanticmap.cpp:1:0:
/home/nx/semmap_ws/src/semmapping-master/include/semanticmap.h: In member function ‘semmapping::polygon semmapping::SemanticMap::computeConvexHullPcl(pcl::PointCloud<pcl::PointXYZ>::ConstPtr)’:
/home/nx/semmap_ws/src/semmapping-master/include/semanticmap.h:124:12: error: ‘ConvexHull’ is not a member of ‘pcl’
       pcl::ConvexHull<pcl::PointXYZ> chull;
            ^~~~~~~~~~
/home/nx/semmap_ws/src/semmapping-master/include/semanticmap.h:124:36: error: expected primary-expression before ‘>’ token
       pcl::ConvexHull<pcl::PointXYZ> chull;
                                    ^
/home/nx/semmap_ws/src/semmapping-master/include/semanticmap.h:124:38: error: ‘chull’ was not declared in this scope
       pcl::ConvexHull<pcl::PointXYZ> chull;
                                      ^~~~~
/home/nx/semmap_ws/src/semmapping-master/include/semanticmap.h:124:38: note: suggested alternative: ‘ceill’
       pcl::ConvexHull<pcl::PointXYZ> chull;
                                      ^~~~~
                                      ceill
semmapping-master/CMakeFiles/mapping.dir/build.make:94: recipe for target 'semmapping-master/CMakeFiles/mapping.dir/src/semanticmap.cpp.o' failed
make[2]: *** [semmapping-master/CMakeFiles/mapping.dir/src/semanticmap.cpp.o] Error 1
make[2]: *** Waiting for unfinished jobs....
In file included from /home/nx/semmap_ws/src/semmapping-master/src/mapping.cpp:54:0:
/home/nx/semmap_ws/src/semmapping-master/include/semanticmap.h: In member function ‘semmapping::polygon semmapping::SemanticMap::computeConvexHullPcl(pcl::PointCloud<pcl::PointXYZ>::ConstPtr)’:
/home/nx/semmap_ws/src/semmapping-master/include/semanticmap.h:124:12: error: ‘ConvexHull’ is not a member of ‘pcl’
       pcl::ConvexHull<pcl::PointXYZ> chull;
            ^~~~~~~~~~
/home/nx/semmap_ws/src/semmapping-master/include/semanticmap.h:124:36: error: expected primary-expression before ‘>’ token
       pcl::ConvexHull<pcl::PointXYZ> chull;
                                    ^
/home/nx/semmap_ws/src/semmapping-master/include/semanticmap.h:124:38: error: ‘chull’ was not declared in this scope
       pcl::ConvexHull<pcl::PointXYZ> chull;
                                      ^~~~~
/home/nx/semmap_ws/src/semmapping-master/include/semanticmap.h:124:38: note: suggested alternative: ‘ceill’
       pcl::ConvexHull<pcl::PointXYZ> chull;
                                      ^~~~~
                                      ceill
/home/nx/semmap_ws/src/semmapping-master/src/mapping.cpp: In function ‘semmapping::polygon getPolygonInMap(pcl::PointCloud<pcl::PointXYZ>::ConstPtr, pcl::PointIndices::Ptr)’:
/home/nx/semmap_ws/src/semmapping-master/src/mapping.cpp:336:10: error: ‘ConvexHull’ is not a member of ‘pcl’
     pcl::ConvexHull<pcl::PointXYZ> chull;
          ^~~~~~~~~~
/home/nx/semmap_ws/src/semmapping-master/src/mapping.cpp:336:34: error: expected primary-expression before ‘>’ token
     pcl::ConvexHull<pcl::PointXYZ> chull;
                                  ^
/home/nx/semmap_ws/src/semmapping-master/src/mapping.cpp:336:36: error: ‘chull’ was not declared in this scope
     pcl::ConvexHull<pcl::PointXYZ> chull;
                                    ^~~~~
/home/nx/semmap_ws/src/semmapping-master/src/mapping.cpp:336:36: note: suggested alternative: ‘ceill’
     pcl::ConvexHull<pcl::PointXYZ> chull;
                                    ^~~~~
                                    ceill
/home/nx/semmap_ws/src/semmapping-master/src/mapping.cpp: In function ‘semmapping::polygon getCompleteAreaPg(pcl::PointCloud<pcl::PointXYZ>::ConstPtr)’:
/home/nx/semmap_ws/src/semmapping-master/src/mapping.cpp:375:10: error: ‘ConvexHull’ is not a member of ‘pcl’
     pcl::ConvexHull<pcl::PointXYZ> chull;
          ^~~~~~~~~~
/home/nx/semmap_ws/src/semmapping-master/src/mapping.cpp:375:34: error: expected primary-expression before ‘>’ token
     pcl::ConvexHull<pcl::PointXYZ> chull;
                                  ^
/home/nx/semmap_ws/src/semmapping-master/src/mapping.cpp:375:36: error: ‘chull’ was not declared in this scope
     pcl::ConvexHull<pcl::PointXYZ> chull;
                                    ^~~~~
/home/nx/semmap_ws/src/semmapping-master/src/mapping.cpp:375:36: note: suggested alternative: ‘ceill’
     pcl::ConvexHull<pcl::PointXYZ> chull;
                                    ^~~~~
                                    ceill
/home/nx/semmap_ws/src/semmapping-master/src/mapping.cpp: In function ‘semmapping::polygon getConvexHull(pcl::PointCloud<pcl::PointXYZ>::ConstPtr)’:
/home/nx/semmap_ws/src/semmapping-master/src/mapping.cpp:392:10: error: ‘ConvexHull’ is not a member of ‘pcl’
     pcl::ConvexHull<pcl::PointXYZ> chull;
          ^~~~~~~~~~
/home/nx/semmap_ws/src/semmapping-master/src/mapping.cpp:392:34: error: expected primary-expression before ‘>’ token
     pcl::ConvexHull<pcl::PointXYZ> chull;
                                  ^
/home/nx/semmap_ws/src/semmapping-master/src/mapping.cpp:392:36: error: ‘chull’ was not declared in this scope
     pcl::ConvexHull<pcl::PointXYZ> chull;
                                    ^~~~~
/home/nx/semmap_ws/src/semmapping-master/src/mapping.cpp:392:36: note: suggested alternative: ‘ceill’
     pcl::ConvexHull<pcl::PointXYZ> chull;
                                    ^~~~~
                                    ceill
In file included from /usr/include/pcl-1.8/pcl/filters/project_inliers.h:45:0,
                 from /home/nx/semmap_ws/src/semmapping-master/src/mapping.cpp:14:
/usr/include/pcl-1.8/pcl/sample_consensus/model_types.h: In function ‘void __static_initialization_and_destruction_0(int, int)’:
/usr/include/pcl-1.8/pcl/sample_consensus/model_types.h:99:3: warning: ‘pcl::SAC_SAMPLE_SIZE’ is deprecated: 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 [-Wdeprecated-declarations]
   SAC_SAMPLE_SIZE (sample_size_pairs, sample_size_pairs + sizeof (sample_size_pairs) / sizeof (SampleSizeModel));
   ^~~~~~~~~~~~~~~
/usr/include/pcl-1.8/pcl/sample_consensus/model_types.h:99:3: note: declared here
semmapping-master/CMakeFiles/mapping.dir/build.make:81: recipe for target 'semmapping-master/CMakeFiles/mapping.dir/src/mapping.cpp.o' failed
make[2]: *** [semmapping-master/CMakeFiles/mapping.dir/src/mapping.cpp.o] Error 1
CMakeFiles/Makefile2:4551: recipe for target 'semmapping-master/CMakeFiles/mapping.dir/all' failed
make[1]: *** [semmapping-master/CMakeFiles/mapping.dir/all] Error 2
Makefile:159: recipe for target 'all' failed
make: *** [all] Error 2
Invoking "make -j2" failed
nx@nx-desktop:~/semmap_ws$ 
 
I build against 1.8 or 1.7 changuing cmakelist as follow maybe is not right. the defaul one failed too because that I changed it.

## Compile as C++11, supported in ROS Kinetic and newer
# add_compile_options(-std=c++11)
add_compile_options(-std=gnu++14)

## Find catkin macros and libraries
## if COMPONENTS list like find_package(catkin REQUIRED COMPONENTS xyz)
## is used, also find other catkin packages
find_package(catkin REQUIRED COMPONENTS
  roscpp rospy tf2_ros tf2_geometry_msgs tf2_sensor_msgs pcl_ros sensor_msgs hypermap_msgs darknet_ros_msgs image_geometry laser_geometry yolact_ros_msgs
)

## System dependencies are found with CMake's conventions
# find_package(Boost REQUIRED COMPONENTS system)
find_package(Boost 1.58 REQUIRED)
find_package(PCL 1.8 REQUIRED)

find_package(PkgConfig REQUIRED)
pkg_check_modules(YAMLCPP yaml-cpp REQUIRED)

Cheers

@Eruvae
Copy link
Owner

Eruvae commented May 19, 2021

Your PCL doesn't seem to have ConvexHull. ConvexHull uses the libqhull library. Make sure you have that library installed, then recompile PCL. If you have the library installed, you can also try setting the QHULL_ROOT variable. See here:
https://pointclouds.org/documentation/tutorials/building_pcl.html

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants