Closed adheeshc closed 10 months ago
Is it possible that you define Status
as a preprocessor symbol, or that some other file you include does this? I found: https://github.com/opencv/opencv/issues/7113 which seems to be a similar problem. You could try to include icp.h as the very first thing, then everything else.
Alternatively you could use a newer PCL version. In PCL 1.11.1 and newer, icp.h no longer includes sac_model_registration.h, which should break this include chain.
So I followed the opencv issue you tagged. Seems that #include <X11/Xlib.h> causes the issue.
As someone suggested in the opencv issue you posted, the workaround for this problem is possible by including PCL headers before Xlib.h in application code
Tested it out and seems to work fine as a workaround,
Better to add a macro check with problem like [here] (https://github.com/opencv/opencv/pull/6161/commits/3cc234588abc3064cf0d5d3113d9bbb75b6a54cf).
Describe the error
Im having a problem with #include <pcl/registration/icp.h>, as soon as i include this in my code and try to build with CMake, it gives me an error with a lot of the eigen3 files, specifically NonLinearOptimization files.
Including other things with pcl like visualizer, filters works fine
Eigen Version: 3.3.7 (also tested with Eigen 3.4.0 and 3.3.4) PCL Version: 1.10.0
Your Environment (please complete the following information):
Found flann, version 1.9.1 Eigen found (include: /usr/include/eigen3, version: 3.3.7) Found Boost: /usr/include (found suitable version "1.71.0", minimum required is "1.55.0") found components: system filesystem date_time iostreams regex
looking for PCL_REGISTRATION -- Found PCL_REGISTRATION: /usr/lib/x86_64-linux-gnu/libpcl_registration.so