- install python 3.8 through homebrew (`arch -x86_64 /usr/local/bin/brew install python@3.8`)
- install the matlab engine in this version of python (`/usr/local/opt/python@3.8/bin/python3.8 setup.py install`)
OSError: MATLAB Engine for Python 3.8 on MacBook Pro with M1 chip
8 ビュー (過去 30 日間)
古いコメントを表示
After running the setup.py file I am trying to import the MATLAB engine from python and i get an OSError:
Please reinstall MATLAB Engine for Python or contact MathWorks Technical Support for assistance: dlopen(/Applications/MATLAB_R2020b.app/extern/engines/python/dist/matlab/engine/maci64/matlabengineforpython3_8.so, 2): no suitable image found. Did find:
/Applications/MATLAB_R2020b.app/extern/engines/python/dist/matlab/engine/maci64/matlabengineforpython3_8.so: mach-o, but wrong architecture
/Applications/MATLAB_R2020b.app/extern/engines/python/dist/matlab/engine/maci64/matlabengineforpython3_8.so: mach-o, but wrong architecture
I have run the usual command:
import matlab.engine
I have MATLAB 2020b latest version running smoothly via rosetta on the said machine. Aren't the MATLAB python engine libraries updated to handle the same.
Kindly help me circumvent this problem.
2 件のコメント
Peter Somhorst
2021 年 10 月 21 日
編集済み: Peter Somhorst
2021 年 10 月 21 日
Hi Mehul,
How did you install Python? I found it doesn't work if you install it through pyenv. What worked for me (installing it, haven't tested anything yet):
NB: Matlab 2021B supports Python 3.9 as well.
Hope this helps!
xenon zhang
2021 年 11 月 1 日
hello, you can use
arch -x86_64 python3
instand of
python3
in terminal to run python as a x86 program (without install another version), then matlab engine can working well
回答 (2 件)
alaa Ahmed
2022 年 5 月 31 日
If you are running matlab in Macbook pro with MATLAB 2020b .. Please run this command on matlab command window so that you set the python evironment directory
pyversion /usr/local/bin/python3
Then type pyenv, you will be able to find all PythonEnvironment feilds are filled :D
pyenv
ans =
PythonEnvironment with properties:
Version: "3.8"
Executable: "/usr/local/bin/python3"
Library: "/Library/Frameworks/Python.framework/Versions/3.8/lib/libpython3.8.dylib"
Home: "/Library/Frameworks/Python.framework/Versions/3.8"
Status: NotLoaded
ExecutionMode: OutOfProcess
0 件のコメント
Rashed Mohammed
2021 年 1 月 28 日
Hi Mehul,
Since you are trying to load matlab engine (which is x86_64) from python3, It is necessary to run python3 also under rosetta2. I was able to reproduce your issue and running python3 under rosetta2 fixed the issue.
Hope this helps!
2 件のコメント
xenon zhang
2021 年 11 月 1 日
@Hyung-Chun Lee you can try
arch -x86_64 python3
to run your script, for example
arch -x86_64 python3 test.py
instand of
python3 test.py
it work for me
参考
カテゴリ
Help Center および File Exchange で Call MATLAB from Python についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!