I was trying to follow this tutorial in the official documentation of ros2 Humble for Integrating launch files into ROS 2 packages and ran in to the below given error after doing trying to perform a build on the package using
colcon build --packages-select py_launch_example
The package build compilation given me the following error.
Starting >>> py_launch_example
[3.759s] WARNING:colcon.colcon_ros.task.ament_python.build:Package 'py_launch_example' doesn't explicitly install a marker in the package index (colcon-ros currently does it implicitly but that fallback will be removed in the future)
[3.793s] WARNING:colcon.colcon_ros.task.ament_python.build:Package 'py_launch_example' doesn't explicitly install the 'package.xml' file (colcon-ros currently does it implicitly but that fallback will be removed in the future)
--- stderr: py_launch_example
/usr/lib/python3/dist-packages/setuptools/command/install.py:34: SetuptoolsDeprecationWarning: setup.py install is deprecated. Use build and pip and other standards-based tools.
warnings.warn(
---
Finished <<< py_launch_example [1.23s]
Summary: 1 package finished [4.38s]
1 package had stderr output: py_launch_example
I have found a similar issue in this thread in ROS Answers. Please help! Thank you
Additional Informations
- operating system : Ubuntu 22.04 LTS
- ROS Distro : Humble
- Python version : 3.10.6
Solutions I have tried :
- Downgrading the
setuptools
to older version58.2.0
, this actually worked for me and the warning was no longer shown. - removing the line
install_requires=['setuptools']
from thesetup.py
file and use--allow-overriding
tag while rebuilding. This solution didn't work for me.
install_requires=['setuptools']
provided in third solution in the same link, but it didn't work. I mentioned this solution is not permanent because it involved downgrading a python package which is not recommended $\endgroup$