rosinit failed in Matlab 2022a, MacOS Apple Silicon
Show older comments
pyenv get
ans =
PythonEnvironment - 属性:
Version: "3.9"
Executable: "/opt/homebrew/Caskroom/miniforge/base/envs/matlab_ros/bin/python"
Library: "/opt/homebrew/Caskroom/miniforge/base/envs/matlab_ros/lib/libpython3.9.dylib"
Home: "/opt/homebrew/Caskroom/miniforge/base/envs/matlab_ros"
Status: NotLoaded
ExecutionMode: InProcess
and rosinit get
Launching ROS Core...
Adding required Python packages to virtual environment..Done.
Could not install the required Python packages. System error message: Looking in links:
/Applications/MATLAB_R2022a.app/sys/ros1/share/python
Processing /Applications/MATLAB_R2022a.app/sys/ros1/share/python/catkin_pkg-0.4.23-py3-none-any.whl
Processing /Applications/MATLAB_R2022a.app/sys/ros1/share/python/empy-3.3.4.tar.gz
Processing
/Applications/MATLAB_R2022a.app/sys/ros1/share/python/docutils-0.17.1-py2.py3-none-any.whl
Processing
/Applications/MATLAB_R2022a.app/sys/ros1/share/python/pyparsing-2.4.7-py2.py3-none-any.whl
Processing
/Applications/MATLAB_R2022a.app/sys/ros1/share/python/python_dateutil-2.8.1-py2.py3-none-any.whl
[31mERROR: Could not find a version that satisfies the requirement pyyaml (from versions: none)[0m
[31mERROR: No matching distribution found for pyyaml[0m
. Use pyenv function to set the path to the Python executable and retry the command.
/opt/homebrew/Caskroom/miniforge/base/envs/matlab_ros/bin/python -m pip install pyyaml and /opt/homebrew/Caskroom/miniforge/base/envs/matlab_ros/bin/python -m pip install pyyaml==5.4.1 make no sense.
6 Comments
Cam Salzberger
on 22 Mar 2022
Is "/opt/homebrew/Caskroom/miniforge/base/envs/matlab_ros/bin/python" where you expect your Python 3.9 installation to be? Or is it an odd location and you'd expect it to be somewhere else?
-Cam
Sheng Yang
on 22 Mar 2022
Cam Salzberger
on 23 Mar 2022
I wonder if that might be the issue. The MATLAB tools are trying to create a venv to install a few modules necessary for building the ROS packages (catkin tools and their dependencies). I have never tried before, but maybe it's an issue creating a venv from a venv. Can you try setting pyenv to the standard Python executable?
-Cam
Sheng Yang
on 24 Mar 2022
Edited: Sheng Yang
on 24 Mar 2022
Cam Salzberger
on 24 Mar 2022
Hmm, I've not seen this exact issue before. One thing that has helped other similar issues is to upgrade pip and setuptools in the base Python installation. So in a terminal outside of MATLAB run:
python3 -m pip install --upgrade pip
python3 -m pip install --upgrade setuptools
After doing that, you can force recreation of the virtual environment in MATLAB by running this from the Command Window. Make sure pyenv is set the same way first (to the base executable).
ros.internal.createOrGetLocalPython(true)
-Cam
Sheng Yang
on 25 Mar 2022
Edited: Sheng Yang
on 25 Mar 2022
Accepted Answer
More Answers (1)
Kenneth Hoffmann
on 3 Aug 2022
0 votes
Hi! Is MATLAB ROS stable on Mac Silicon? I am considering upgrading. Thanks!
1 Comment
Sk Shaon
on 10 Feb 2023
No, Still has the same Issue
Unable to install the required Python packages. System error message:
Looking in links: c:\Program Files\MATLAB\R2022b\sys\ros1\share\python
Processing c:\program files\matlab\r2022b\sys\ros1\share\python\catkin_pkg-0.4.23-py3-none-any.whl
Processing c:\program files\matlab\r2022b\sys\ros1\share\python\empy-3.3.4.tar.gz
Processing c:\program files\matlab\r2022b\sys\ros1\share\python\docutils-0.17.1-py2.py3-none-any.whl
Processing c:\program files\matlab\r2022b\sys\ros1\share\python\pyparsing-2.4.7-py2.py3-none-any.whl
Processing c:\program files\matlab\r2022b\sys\ros1\share\python\python_dateutil-2.8.1-py2.py3-none-any.whl
ERROR: Could not find a version that satisfies the requirement pyyaml (from versions: none)
ERROR: No matching distribution found for pyyaml
.
Use ROS Toolbox preferences to create a Python virtual environment.
Categories
Find more on Call Python from MATLAB in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!