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

Add octomap-mapping & octomap-server #378

Merged
merged 11 commits into from
Jul 19, 2023

Conversation

joerowelll
Copy link
Contributor

No description provided.

@Tobias-Fischer
Copy link
Collaborator

It seems there are some symbols undefined on osx:

[6/25] Linking CXX shared library devel/lib/liboctomap_server.dylib
FAILED: devel/lib/liboctomap_server.dylib 
: && $BUILD_PREFIX/bin/arm64-apple-darwin20.0.0-clang++ -fdiagnostics-color=always -DBOOST_ERROR_CODE_HEADER_ONLY -O3 -DNDEBUG -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk -mmacosx-version-min=11.0 -dynamiclib -Wl,-headerpad_max_install_names -Wl,-pie -Wl,-headerpad_max_install_names -Wl,-dead_strip_dylibs -Wl,-rpath,$PREFIX/lib -L$PREFIX/lib -o devel/lib/liboctomap_server.dylib -install_name @rpath/liboctomap_server.dylib CMakeFiles/octomap_server.dir/src/OctomapServer.cpp.o CMakeFiles/octomap_server.dir/src/OctomapServerMultilayer.cpp.o CMakeFiles/octomap_server.dir/src/TrackingOctomapServer.cpp.o  $PREFIX/lib/liboctomap.dylib  $PREFIX/lib/liboctomath.dylib  $PREFIX/lib/libpcl_ros_filter.dylib  $PREFIX/lib/libpcl_ros_tf.dylib  $PREFIX/lib/librosbag.dylib  $PREFIX/lib/librosbag_storage.dylib  $PREFIX/lib/libroslz4.dylib  $PREFIX/lib/liblz4.dylib  $PREFIX/lib/libtopic_tools.dylib  $PREFIX/lib/libpcl_common.dylib  $PREFIX/lib/liboctomap_ros.dylib  $PREFIX/lib/liboctomap.dylib  $PREFIX/lib/liboctomath.dylib  $PREFIX/lib/libtf.dylib  $PREFIX/lib/libtf2_ros.dylib  $PREFIX/lib/libactionlib.dylib  $PREFIX/lib/libmessage_filters.dylib  $PREFIX/lib/libtf2.dylib  $PREFIX/lib/libdynamic_reconfigure_config_init_mutex.dylib  $PREFIX/lib/libnodeletlib.dylib  $PREFIX/lib/libboost_thread.dylib  $PREFIX/lib/libbondcpp.dylib  $PREFIX/lib/libclass_loader.dylib  $PREFIX/lib/libPocoFoundation.dylib  -ldl  $PREFIX/lib/libconsole_bridge.1.0.dylib  $PREFIX/lib/libroslib.dylib  $PREFIX/lib/librospack.dylib  $PREFIX/lib/libboost_filesystem.dylib  $PREFIX/lib/libtinyxml2.dylib  $PREFIX/lib/libroscpp.dylib  $PREFIX/lib/libboost_chrono.dylib  $PREFIX/lib/librosconsole.dylib  $PREFIX/lib/librosconsole_log4cxx.dylib  $PREFIX/lib/librosconsole_backend_interface.dylib  $PREFIX/lib/liblog4cxx.dylib  $PREFIX/lib/libboost_regex.dylib  $PREFIX/lib/libxmlrpcpp.dylib  $PREFIX/lib/libroscpp_serialization.dylib  $PREFIX/lib/librostime.dylib  $PREFIX/lib/libboost_date_time.dylib  $PREFIX/lib/libcpp_common.dylib  $PREFIX/lib/libboost_system.dylib  $PREFIX/lib/libpcl_ros_filter.dylib  $PREFIX/lib/libpcl_ros_tf.dylib  $PREFIX/lib/librosbag.dylib  $PREFIX/lib/librosbag_storage.dylib  $PREFIX/lib/libroslz4.dylib  $PREFIX/lib/liblz4.dylib  $PREFIX/lib/libtopic_tools.dylib  $PREFIX/lib/libpcl_common.dylib  $PREFIX/lib/liboctomap_ros.dylib  $PREFIX/lib/libtf.dylib  $PREFIX/lib/libtf2_ros.dylib  $PREFIX/lib/libactionlib.dylib  $PREFIX/lib/libmessage_filters.dylib  $PREFIX/lib/libtf2.dylib  $PREFIX/lib/libdynamic_reconfigure_config_init_mutex.dylib  $PREFIX/lib/libnodeletlib.dylib  $PREFIX/lib/libboost_thread.dylib  $PREFIX/lib/libbondcpp.dylib  $PREFIX/lib/libclass_loader.dylib  $PREFIX/lib/libPocoFoundation.dylib  -ldl  $PREFIX/lib/libconsole_bridge.1.0.dylib  $PREFIX/lib/libroslib.dylib  $PREFIX/lib/librospack.dylib  $PREFIX/lib/libboost_filesystem.dylib  $PREFIX/lib/libtinyxml2.dylib  $PREFIX/lib/libroscpp.dylib  $PREFIX/lib/libboost_chrono.dylib  $PREFIX/lib/librosconsole.dylib  $PREFIX/lib/librosconsole_log4cxx.dylib  $PREFIX/lib/librosconsole_backend_interface.dylib  $PREFIX/lib/liblog4cxx.dylib  $PREFIX/lib/libboost_regex.dylib  $PREFIX/lib/libxmlrpcpp.dylib  $PREFIX/lib/libroscpp_serialization.dylib  $PREFIX/lib/librostime.dylib  $PREFIX/lib/libboost_date_time.dylib  $PREFIX/lib/libcpp_common.dylib  $PREFIX/lib/libboost_system.dylib && :
ld: warning: -pie being ignored. It is only used when linking a main executable
Undefined symbols for architecture arm64:
  "pcl::PassThrough<pcl::PointXYZ>::applyFilterIndices(std::__1::vector<int, std::__1::allocator<int> >&)", referenced from:
      pcl::PassThrough<pcl::PointXYZ>::applyFilter(std::__1::vector<int, std::__1::allocator<int> >&) in OctomapServer.cpp.o
  "pcl::FilterIndices<pcl::PointXYZ>::applyFilter(pcl::PointCloud<pcl::PointXYZ>&)", referenced from:
      vtable for pcl::PassThrough<pcl::PointXYZ> in OctomapServer.cpp.o
      vtable for pcl::FilterIndices<pcl::PointXYZ> in OctomapServer.cpp.o
  "pcl::ExtractIndices<pcl::PointXYZ>::applyFilter(pcl::PointCloud<pcl::PointXYZ>&)", referenced from:
      vtable for pcl::ExtractIndices<pcl::PointXYZ> in OctomapServer.cpp.o
  "pcl::ExtractIndices<pcl::PointXYZ>::applyFilterIndices(std::__1::vector<int, std::__1::allocator<int> >&)", referenced from:
      pcl::ExtractIndices<pcl::PointXYZ>::applyFilter(std::__1::vector<int, std::__1::allocator<int> >&) in OctomapServer.cpp.o
  "pcl::SACSegmentation<pcl::PointXYZ>::initSACModel(int)", referenced from:
      vtable for pcl::SACSegmentation<pcl::PointXYZ> in OctomapServer.cpp.o
  "pcl::SACSegmentation<pcl::PointXYZ>::initSAC(int)", referenced from:
      vtable for pcl::SACSegmentation<pcl::PointXYZ> in OctomapServer.cpp.o
  "pcl::SACSegmentation<pcl::PointXYZ>::segment(pcl::PointIndices&, pcl::ModelCoefficients&)", referenced from:
      octomap_server::OctomapServer::filterGroundPlane(pcl::PointCloud<pcl::PointXYZ> const&, pcl::PointCloud<pcl::PointXYZ>&, pcl::PointCloud<pcl::PointXYZ>&) const in OctomapServer.cpp.o
      vtable for pcl::SACSegmentation<pcl::PointXYZ> in OctomapServer.cpp.o
ld: symbol(s) not found for architecture arm64

On Windows, we have:

FAILED: CMakeFiles/octomap_server.dir/src/OctomapServer.cpp.obj 
C:\PROGRA~2\MICROS~2\2019\ENTERP~1\VC\Tools\MSVC\1429~1.301\bin\Hostx64\x64\cl.exe  /nologo /TP -DNOMINMAX -DOCTOMAP_NODEBUGOUT -DROSCONSOLE_BACKEND_LOG4CXX -DROS_BUILD_SHARED_LIBS=1 -DROS_PACKAGE_NAME=\"octomap_server\" -DWIN32_LEAN_AND_MEAN -D_USE_MATH_DEFINES -Doctomap_server_EXPORTS -I%SRC_DIR%\build\devel\include -I%SRC_DIR%\ros-noetic-octomap-server\src\work\include -I%PREFIX%\Library\include -I%PREFIX%\Library\share\xmlrpcpp\cmake\..\..\..\include\xmlrpcpp -I%PREFIX%\Library\include\eigen3 -I%PREFIX%\Library\include\pcl-1.12 /DWIN32 /D_WINDOWS /W3 /GR /EHsc /MD /O2 /Ob2 /DNDEBUG   /D _VARIADIC_MAX=10 /Zc:__cplusplus /showIncludes /FoCMakeFiles\octomap_server.dir\src\OctomapServer.cpp.obj /FdCMakeFiles\octomap_server.dir\ /FS -c %SRC_DIR%\ros-noetic-octomap-server\src\work\src\OctomapServer.cpp
%PREFIX%\Library\include\boost/bind.hpp(41): note: The practice of declaring the Bind placeholders (_1, _2, ...) in the global namespace is deprecated. Please use <boost/bind/bind.hpp> + using namespace boost::placeholders, or define BOOST_BIND_GLOBAL_PLACEHOLDERS to retain the current behavior.
%PREFIX%\Library\include\dynamic_reconfigure/config_tools.h(136): warning C4267: 'return': conversion from 'size_t' to 'int', possible loss of data
%SRC_DIR%\ros-noetic-octomap-server\src\work\include\octomap_server/OctomapServer.h(50): warning C4068: unknown pragma 'GCC'
%SRC_DIR%\ros-noetic-octomap-server\src\work\include\octomap_server/OctomapServer.h(51): warning C4068: unknown pragma 'GCC'
%SRC_DIR%\ros-noetic-octomap-server\src\work\include\octomap_server/OctomapServer.h(53): warning C4068: unknown pragma 'GCC'
%PREFIX%\Library\include\pcl-1.12\pcl/io/low_level_io.h(77): warning C4996: '_open': This function or variable may be unsafe. Consider using _sopen_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details.
%PREFIX%\Library\include\pcl-1.12\pcl/io/low_level_io.h(82): warning C4996: '_open': This function or variable may be unsafe. Consider using _sopen_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details.
%SRC_DIR%\ros-noetic-octomap-server\src\work\src\OctomapServer.cpp(649): error C2589: '(': illegal token on right side of '::'
%SRC_DIR%\ros-noetic-octomap-server\src\work\src\OctomapServer.cpp(649): error C2062: type 'unknown-type' unexpected
%SRC_DIR%\ros-noetic-octomap-server\src\work\src\OctomapServer.cpp(649): error C2059: syntax error: ')'
%SRC_DIR%\ros-noetic-octomap-server\src\work\src\OctomapServer.cpp(675): error C2589: '(': illegal token on right side of '::'
%SRC_DIR%\ros-noetic-octomap-server\src\work\src\OctomapServer.cpp(675): error C2062: type 'unknown-type' unexpected
%SRC_DIR%\ros-noetic-octomap-server\src\work\src\OctomapServer.cpp(675): error C2059: syntax error: ')'
%SRC_DIR%\ros-noetic-octomap-server\src\work\src\OctomapServer.cpp(776): error C2589: '(': illegal token on right side of '::'
%SRC_DIR%\ros-noetic-octomap-server\src\work\src\OctomapServer.cpp(776): error C2062: type 'unknown-type' unexpected
%SRC_DIR%\ros-noetic-octomap-server\src\work\src\OctomapServer.cpp(776): error C2059: syntax error: ')'
%SRC_DIR%\ros-noetic-octomap-server\src\work\src\OctomapServer.cpp(791): error C2589: '(': illegal token on right side of '::'
%SRC_DIR%\ros-noetic-octomap-server\src\work\src\OctomapServer.cpp(791): error C2062: type 'unknown-type' unexpected
%SRC_DIR%\ros-noetic-octomap-server\src\work\src\OctomapServer.cpp(791): error C2059: syntax error: ')'

Do you need macOS/Windows builds? If not, I would be happy to merge just the addition on Linux (in this case, please amend the PR to undo the changes on macOS/Windows).

@joerowelll
Copy link
Contributor Author

I only need the linux64 packages, I have amended the PR

@Tobias-Fischer Tobias-Fischer merged commit fc9c5c1 into RoboStack:master Jul 19, 2023
5 checks passed
@Tobias-Fischer
Copy link
Collaborator

Thanks for the contribution!

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

Successfully merging this pull request may close these issues.

2 participants