Closed jakub-kozlowicz closed 3 months ago
Hi @jakub-kozlowicz - you’ll need to update to Python 3.11 :). Just add python=3.11 to your mamba install.
With Python 3.11 the packages cannot be build due to deprecated build system. Python 3.11 dead not allow direct setup.py
call and require to use the standard build system.
Which packages? We’re using direct setup.py calls.
I have my custom ros packages (https://git.kcir.pwr.edu.pl/turtlebot2/mmrs-controller) and when I invoked colcon build
I've received:
❯ colcon build
Starting >>> mmrs_msgs
--- stderr: mmrs_msgs
CMake Warning (dev) at /opt/homebrew/Caskroom/miniforge/base/envs/mmrs-controller/share/rosidl_generator_py/cmake/rosidl_generator_py_generate_interfaces.cmake:20 (find_package):
Policy CMP0148 is not set: The FindPythonInterp and FindPythonLibs modules
are removed. Run "cmake --help-policy CMP0148" for policy details. Use
the cmake_policy command to set the policy and suppress this warning.
Call Stack (most recent call first):
/opt/homebrew/Caskroom/miniforge/base/envs/mmrs-controller/share/ament_cmake_core/cmake/core/ament_execute_extensions.cmake:48 (include)
/opt/homebrew/Caskroom/miniforge/base/envs/mmrs-controller/share/rosidl_cmake/cmake/rosidl_generate_interfaces.cmake:286 (ament_execute_extensions)
CMakeLists.txt:17 (rosidl_generate_interfaces)
This warning is for project developers. Use -Wno-dev to suppress it.
CMake Warning (dev) at /opt/homebrew/Caskroom/miniforge/base/envs/mmrs-controller/share/python_cmake_module/cmake/Modules/FindPythonExtra.cmake:52 (find_package):
Policy CMP0148 is not set: The FindPythonInterp and FindPythonLibs modules
are removed. Run "cmake --help-policy CMP0148" for policy details. Use
the cmake_policy command to set the policy and suppress this warning.
Call Stack (most recent call first):
/opt/homebrew/Caskroom/miniforge/base/envs/mmrs-controller/share/rosidl_generator_py/cmake/rosidl_generator_py_generate_interfaces.cmake:23 (find_package)
/opt/homebrew/Caskroom/miniforge/base/envs/mmrs-controller/share/ament_cmake_core/cmake/core/ament_execute_extensions.cmake:48 (include)
/opt/homebrew/Caskroom/miniforge/base/envs/mmrs-controller/share/rosidl_cmake/cmake/rosidl_generate_interfaces.cmake:286 (ament_execute_extensions)
CMakeLists.txt:17 (rosidl_generate_interfaces)
This warning is for project developers. Use -Wno-dev to suppress it.
[cctools-port]: generating fake signature for '/Users/jakub/Projects/mmrs-controller/install/mmrs_msgs/lib/libmmrs_msgs__rosidl_typesupport_fastrtps_c.dylib'
[cctools-port]: generating fake signature for '/Users/jakub/Projects/mmrs-controller/install/mmrs_msgs/lib/libmmrs_msgs__rosidl_typesupport_introspection_c.dylib'
[cctools-port]: generating fake signature for '/Users/jakub/Projects/mmrs-controller/install/mmrs_msgs/lib/libmmrs_msgs__rosidl_typesupport_c.dylib'
[cctools-port]: generating fake signature for '/Users/jakub/Projects/mmrs-controller/install/mmrs_msgs/lib/python3.11/site-packages/mmrs_msgs/mmrs_msgs_s__rosidl_typesupport_fastrtps_c.cpython-311-darwin.so'
[cctools-port]: generating fake signature for '/Users/jakub/Projects/mmrs-controller/install/mmrs_msgs/lib/python3.11/site-packages/mmrs_msgs/mmrs_msgs_s__rosidl_typesupport_introspection_c.cpython-311-darwin.so'
[cctools-port]: generating fake signature for '/Users/jakub/Projects/mmrs-controller/install/mmrs_msgs/lib/python3.11/site-packages/mmrs_msgs/mmrs_msgs_s__rosidl_typesupport_c.cpython-311-darwin.so'
[cctools-port]: generating fake signature for '/Users/jakub/Projects/mmrs-controller/install/mmrs_msgs/lib/libmmrs_msgs__rosidl_generator_py.dylib'
---
Finished <<< mmrs_msgs [14.0s]
Starting >>> mmrs_controller
--- stderr: mmrs_controller
/opt/homebrew/Caskroom/miniforge/base/envs/mmrs-controller/lib/python3.11/site-packages/setuptools/_distutils/cmd.py:66: SetuptoolsDeprecationWarning: setup.py install is deprecated.
!!
********************************************************************************
Please avoid running ``setup.py`` directly.
Instead, use pypa/build, pypa/installer or other
standards-based tools.
See https://blog.ganssle.io/articles/2021/10/setup-py-deprecated.html for details.
********************************************************************************
!!
self.initialize_options()
---
Finished <<< mmrs_controller [1.16s]
Summary: 2 packages finished [15.8s]
2 packages had stderr output: mmrs_controller mmrs_msgs
Somehow earlier I thought that this is error and the build did not complete.
Thanks for help :)
Yes, there are a lot of warnings that look like errors, but it should all be fine. Soon ROS2 upstream will need to avoid using setup.py as in Python 3.12 it is indeed not an option anymore, and Ubuntu 24.04 will use Python 3.12 (just repeating @traversaro here from another conversation that I can’t find at the moment).
Feel free to reopen if you have more issues.
Soon ROS2 upstream will need to avoid using setup.py as in Python 3.12 it is indeed not an option anymore, and Ubuntu 24.04 will use Python 3.12 (just repeating @traversaro here from another conversation that I can’t find at the moment).
For reference: https://matrix.to/#/!rdzftyfSnEcdOEyuoI:gitter.im/$tQzsI8lr8hHGOfZoTJBu00uyd8_5QsCINgZ3tDU0C2o?via=gitter.im&via=matrix.org .
Solution to issue cannot be found in the documentation.
Issue
When trying to install newer nav2 packages (like 1.1.13) there is a conflict and packages cannot be installed.
Installed packages
Environment info