首页 > 解决方案 > python OSError:dlopen:找不到合适的图像。麦克M1

问题描述

我的电脑是 Macbook Pro m1。蟒蛇版本 3.9.4。今天我安装了bm3d并尝试运行demo,我得到了这个错误。

/Users/pennyan/miniforge3/envs/py39t/bin/python3.9 /Users/pennyan/PycharmProjects/bm3dproject/bm3d_demos/bm3d_demo_grayscale.py
Traceback (most recent call last):
  File "/Users/pennyan/PycharmProjects/bm3dproject/bm3d_demos/bm3d_demo_grayscale.py", line 70, in <module>
    main()
  File "/Users/pennyan/PycharmProjects/bm3dproject/bm3d_demos/bm3d_demo_grayscale.py", line 39, in main
    y_est = bm3d(z, psd)
  File "/Users/pennyan/miniforge3/envs/py39t/lib/python3.9/site-packages/bm3d/__init__.py", line 265, in bm3d
    y_hat, ht_blocks = bm3d_step(BM3DStages.HARD_THRESHOLDING, z, psd_blur, single_dim_psd,
  File "/Users/pennyan/miniforge3/envs/py39t/lib/python3.9/site-packages/bm3d/bm3d_ctypes.py", line 194, in bm3d_step
    dll = ctypes.CDLL(get_dll_names()[0 if mode == BM3DStages.HARD_THRESHOLDING else 1])
  File "/Users/pennyan/miniforge3/envs/py39t/lib/python3.9/ctypes/__init__.py", line 382, in __init__
    self._handle = _dlopen(self._name, mode)
OSError: dlopen(/Users/pennyan/miniforge3/envs/py39t/lib/python3.9/site-packages/bm3d/bm3d_thr_mac.so, 6): no suitable image found.  Did find:
    /Users/pennyan/miniforge3/envs/py39t/lib/python3.9/site-packages/bm3d/bm3d_thr_mac.so: mach-o, but wrong architecture
    /Users/pennyan/miniforge3/envs/py39t/lib/python3.9/site-packages/bm3d/bm3d_thr_mac.so: stat() failed with errno=22

Process finished with exit code 1

谁能告诉我如何解决这个问题?

标签: pythonoserror

解决方案


推荐阅读