How to use ROS2 with multiple Python versions installed/virtualenv?

asked 2021-02-04 03:53:28 -0600

jblumenkamp gravatar image

Hello ROS2 community,

I am a Manjaro Linux user and have to build ROS2 from source. There are detailed instructions in the Arch Linux Wiki, but those instructions refer to the most recent Python version, which is 3.9. I have a package I rely on that only supports Python 3.8.

Therefore, I have to build ROS2 from source using Python 3.8, but I can't figure out how to do this. It seems like ROS2 assumes that whatever Python version is installed in the system should be used (so the one that is called when running python, which in my case is Python 3.9), but I need to invoke python3.8. There are instructions to install packages in a virtualenv with ROS2, but it seems like this only refers to an already successful installation of ROS2.

So, how can I get ROS2 to build from source if I have multiple Python versions installed on my system? Is there a way to get ROS2 to build from source using virtualenv?

Thanks, Jan

edit retag flag offensive close merge delete