ompl / ompl

The Open Motion Planning Library (OMPL)
https://ompl.kavrakilab.org
Other
1.48k stars 591 forks source link

Update_bindings not working on apple m2 macOS 13.2.1 #1128

Open bakuljangley opened 11 months ago

bakuljangley commented 11 months ago

Hello, I'm trying to use OMPL for a course project.

I've tried to install ompl on my MacBook on macOS and on an Ubuntu VM. I keep getting stuck. The main error is that it does not find a target when I run make update_bindings.

This is what I get while running cmake ../.. inside build/Release (on the MacBook): -- The CXX compiler identification is AppleClang 14.0.3.14030022 -- Detecting CXX compiler ABI info -- Detecting CXX compiler ABI info - done -- Check for working CXX compiler: /Library/Developer/CommandLineTools/usr/bin/c++ - skipped -- Detecting CXX compile features -- Detecting CXX compile features - done -- Build type: Release -- Found Boost: /opt/homebrew/lib/cmake/Boost-1.83.0/BoostConfig.cmake (found suitable version "1.83.0", minimum required is "1.58") found components: serialization filesystem system program_options warning: target 'Boost::system' is not absolute... warning: target 'Boost::system' does not exist... -- Could NOT find PkgConfig (missing: PKG_CONFIG_EXECUTABLE) -- Could NOT find spot (missing: SPOT_LIBRARIES SPOT_INCLUDE_DIRS) -- Could NOT find Doxygen (missing: DOXYGEN_EXECUTABLE) -- Found PY_pyplusplus: /Users/bakuljangley/Library/Python/3.9/lib/python/site-packages/pyplusplus -- Found PY_pygccxml: /Users/bakuljangley/Library/Python/3.9/lib/python/site-packages/pygccxml -- Found castxml: /opt/homebrew/bin/castxml -- Could NOT find yaml-cpp (missing: yaml-cpp_DIR) -- The following features have been enabled:

-- The following OPTIONAL packages have been found:

-- The following REQUIRED packages have been found:

-- The following OPTIONAL packages have not been found:

-- The following Python modules were found:

-- Configuring done (0.5s) -- Generating done (0.1s) -- Build files have been written to: /Users/bakuljangley/Q2/PDM/ompl/build/Release

This is what I get on running it on the VM: -- The CXX compiler identification is GNU 9.4.0 -- Check for working CXX compiler: /usr/bin/c++ -- Check for working CXX compiler: /usr/bin/c++ -- works -- Detecting CXX compiler ABI info -- Detecting CXX compiler ABI info - done -- Detecting CXX compile features -- Detecting CXX compile features - done -- Build type: Release -- Found PkgConfig: /usr/bin/pkg-config (found version "0.29.1") -- Checking for module 'ode' -- Found ode, version 0.16 -- Checking for module 'flann' -- No package 'flann' found -- Checking for module 'libspot' -- No package 'libspot' found -- Could NOT find spot (missing: SPOT_LIBRARIES SPOT_INCLUDE_DIRS) -- Could NOT find Doxygen (missing: DOXYGEN_EXECUTABLE) -- Found PY_pyplusplus: /usr/local/lib/python3.8/dist-packages/pyplusplus
-- Found PY_pygccxml: /usr/local/lib/python3.8/dist-packages/pygccxml
-- Found castxml: /usr/bin/castxml
-- Checking for module 'yaml-cpp' -- Found yaml-cpp, version 0.6.2 -- Found yaml-cpp: yaml-cpp
-- The following features have been enabled:

-- The following OPTIONAL packages have been found:

-- The following REQUIRED packages have been found:

-- The following OPTIONAL packages have not been found:

-- The following Python modules were found:

-- Configuring done -- Generating done -- Build files have been written to: /home/bakul/Downloads/ompl-1.6.0/build/Release

When I try to update the bindings, I get _make: *** No rule to make target 'updatebindings'. Stop.

zkingston commented 11 months ago

If you do not need the C++ library, could you try first to pip install one of the pre-built Python wheels? https://github.com/ompl/ompl/releases/tag/prerelease

bakuljangley commented 11 months ago

As you suggested, I used a pre-built wheel.

When I try to run one of the ompl demos (RigidBodyPlanningWithControls.py), it gives me the error: TypeError: No to_python (by-value) converter found for C++ type: std::__1::shared_ptr

I need to use control for my project so this doesn't work

SPDonaghy commented 3 months ago

As you suggested, I used a pre-built wheel.

When I try to run one of the ompl demos (RigidBodyPlanningWithControls.py), it gives me the error: TypeError: No to_python (by-value) converter found for C++ type: std::__1::shared_ptrompl::control::SpaceInformation

I need to use control for my project so this doesn't work

Were you able to get it working?