ImportError: dlopen(/Users/red/Library/Python/3.9/lib/python/site-packages/_cffi_backend.cpython-39-darwin.so, 0x0002): tried: '/Users/red/Library/Python/3.9/lib/python/site-packages/_cffi_backend.cpython-39-darwin.so' (mach-o file, but is an incompatible architecture (have 'arm64', need 'x86_64')), '/System/Volumes/Preboot/Cryptexes/OS/Users/red/Library/Python/3.9/lib/python/site-packages/_cffi_backend.cpython-39-darwin.so' (no such file), '/Users/red/Library/Python/3.9/lib/python/site-packages/_cffi_backend.cpython-39-darwin.so' (mach-o file, but is an incompatible architecture (have 'arm64', need 'x86_64'))thread '<unnamed>' panicked at 'Python API call failed', /Users/runner/.cargo/registry/src/index.crates.io-6f17d22bba15001f/pyo3-0.18.3/src/err/mod.rs:790:5note: run with `RUST_BACKTRACE=1` environment variable to display a backtraceTraceback (most recent call last): File "/usr/local/project/red/python/memory.py", line 3, in <module> import paramiko File "/Users/red/Library/Python/3.9/lib/python/site-packages/paramiko/__init__.py", line 22, in <module> from paramiko.transport import ( File "/Users/red/Library/Python/3.9/lib/python/site-packages/paramiko/transport.py", line 33, in <module> from cryptography.hazmat.primitives.ciphers import algorithms, Cipher, modes File "/Users/red/Library/Python/3.9/lib/python/site-packages/cryptography/hazmat/primitives/ciphers/__init__.py", line 11, in <module> from cryptography.hazmat.primitives.ciphers.base import ( File "/Users/red/Library/Python/3.9/lib/python/site-packages/cryptography/hazmat/primitives/ciphers/base.py", line 10, in <module> from cryptography.exceptions import ( File "/Users/red/Library/Python/3.9/lib/python/site-packages/cryptography/exceptions.py", line 9, in <module> from cryptography.hazmat.bindings._rust import exceptions as rust_exceptionspyo3_runtime.PanicException: Python API call failed
时间: 2023-07-17 07:56:32 浏览: 208
根据您提供的错误信息,看起来是由于Python模块的兼容性问题导致的错误。具体来说,您的Python模块 `_cffi_backend` 不兼容当前的处理器架构。
根据错误信息,您的处理器架构是 `arm64`,而需要的架构是 `x86_64`。这可能是由于您的Python解释器和相关模块是为不同架构编译的,导致不匹配的问题。
解决此问题的一种方法是确保您使用的Python解释器和相关模块都是为您所使用的处理器架构编译的。您可以尝试在兼容的架构上运行该代码,或者尝试使用与您的处理器架构匹配的Python解释器和模块。
另外,请确保您的Python环境中已经正确安装了所需的模块,并且模块版本与您的代码兼容。您可以使用`pip`命令来安装或更新模块。例如,`pip install paramiko`可以安装`paramiko`模块。
如果问题仍然存在,请尝试检查您的Python环境配置,并确保所有依赖项和模块都正确安装和配置。
相关问题
ImportError: dlopen(/Users/jean/Library/Python/3.9/lib/python/site-packages/pyodbc.cpython-39-darwin.so, 0x0002): symbol not found in flat namespace '_SQLAllocHandle'
这个错误通常是因为缺少必要的依赖项或者安装的 pyodbc 版本不兼容所致。您可以尝试以下几种方法来解决这个问题:
1. 确保已正确安装 pyodbc:检查您的 Python 环境是否已正确安装 pyodbc 包,并且版本与您所使用的操作系统和 Python 版本相匹配。您可以通过在终端或命令提示符中运行以下命令来安装最新版本的 pyodbc:
```
pip install pyodbc
```
2. 检查依赖项:某些操作系统需要额外的依赖项才能正确运行 pyodbc。请确保您已正确安装和配置这些依赖项。例如,在 macOS 上,您可能需要安装 UnixODBC:
```
brew install unixodbc
```
3. 更新 pyodbc 版本:如果您已经安装了较旧的 pyodbc 版本,尝试更新到最新版本,看是否解决了问题。
```
pip install --upgrade pyodbc
```
4. 清除缓存并重新安装:有时候缓存的问题可能导致库加载错误。您可以尝试清除缓存并重新安装 pyodbc,以解决该问题。首先卸载 pyodbc:
```
pip uninstall pyodbc
```
然后重新安装:
```
pip install pyodbc
```
如果以上方法都没有解决问题,您可以尝试在 PyODBC 的 GitHub 页面上寻求帮助,或者查看其他用户是否遇到了类似的问题。
>>> import torchvision Traceback (most recent call last): File "<stdin>", line 1, in <module> File "/opt/anaconda3/envs/pytorch/lib/python3.9/site-packages/torchvision/__init__.py", line 7, in <module> from torchvision import datasets File "/opt/anaconda3/envs/pytorch/lib/python3.9/site-packages/torchvision/datasets/__init__.py", line 1, in <module> from .lsun import LSUN, LSUNClass File "/opt/anaconda3/envs/pytorch/lib/python3.9/site-packages/torchvision/datasets/lsun.py", line 2, in <module> from PIL import Image File "/opt/anaconda3/envs/pytorch/lib/python3.9/site-packages/PIL/Image.py", line 100, in <module> from . import _imaging as core ImportError: dlopen(/opt/anaconda3/envs/pytorch/lib/python3.9/site-packages/PIL/_imaging.cpython-39-darwin.so, 2): Library not loaded: @rpath/libjpeg.9.dylib Referenced from: /opt/anaconda3/envs/pytorch/lib/python3.9/site-packages/PIL/_imaging.cpython-39-darwin.so Reason: Incompatible library version: _imaging.cpython-39-darwin.so requires version 15.0.0 or later, but libjpeg.9.dylib provides version 12.0.0
这个错误提示显示 PIL 库中的 _imaging.cpython-39-darwin.so 动态链接库依赖的 libjpeg.9.dylib 版本不兼容,需要版本号为 15.0.0 或更高版本。
解决方法:
1.卸载已安装的 Pillow 库,执行以下命令:
```
pip uninstall pillow
```
2. 安装 libjpeg-turbo,执行以下命令:
```
brew install libjpeg-turbo
```
3. 安装 Pillow 库,并指定使用 libjpeg-turbo 库,执行以下命令:
```
pip install --no-cache-dir -I pillow-SO_LATEST_VERSION --global-option="build_ext" --global-option="--disable-jpeg" --global-option="--enable-jpeg2000" --global-option="--enable-zlib" --global-option="--enable-turbojpeg"
```
其中,SO_LATEST_VERSION 是指最新版本的 Pillow 库的版本号。您可以在 PyPI 上查看最新版本的 Pillow 库的版本号。
4. 验证 Pillow 库是否安装成功,执行以下命令:
```
python -c "from PIL import Image; print(Image.core.jpeglib_version)"
```
如果输出的版本号为 libjpeg-turbo 的版本号,则说明安装成功。
阅读全文