1、报错内容为: import pycurl ImportError: dlopen(/Users/kiwi/.pyenv/versions/xiu_admin_flask/lib/python3.6/site-packages/pycurl.cpython-36m-darwin.so, 2): Library not loaded: @rpath/libgssapi_krb5.2.2.dylib Referenced from: /Users/kiwi/.pyenv/versions/xiu_admin_flask/lib/python3.6/site-packages/pycurl.cpython-36m-darwin.so Reason: image not found
解决:
- 打开终端,输入以下命令,查看
pycurl模块所依赖的动态链接库:
otool -L /Users/kiwi/.pyenv/versions/xiu_admin_flask/lib/python3.6/site-packages/pycurl.cpython-36m-darwin.so
- 检查输出结果,查看是否有链接库的路径为
@rpath/libgssapi_krb5.2.2.dylib。如果有,则需要使用install_name_tool命令将其修改为正确的路径。 例如,如果libgssapi_krb5.2.2.dylib库的实际路径为/usr/local/opt/krb5/lib/libgssapi_krb5.2.2.dylib,则可以使用以下命令进行修改:
install_name_tool -change "@rpath/libgssapi_krb5.2.2.dylib" "/usr/local/opt/krb5/lib/libgssapi_krb5.2.2.dylib" /Users/kiwi/workspaces/admin_flask/lib/python3.6/site-packages/pycurl.cpython-36m-darwin.so
- 如果还不行重新下载或导入
pycurl模块。
需要先下载krb5
2、 报错内容为: ImportError: pycurl: libcurl link-time ssl backend (none/other) is different from compile-time ssl backend (openssl) 这个错误是由于编译 pycurl 时使用的 SSL 后端与当前系统中可用的 SSL 后端不同所致。为了解决这个问题可能需要下载curl-ssr然后重新下载pycurl