![La actualización de Mac de High Sierra a Catalina rompió "importar pycurl"](https://rvso.com/image/1606685/La%20actualizaci%C3%B3n%20de%20Mac%20de%20High%20Sierra%20a%20Catalina%20rompi%C3%B3%20%22importar%20pycurl%22.png)
Actualicé mi Mac de High Sierra a Catalina pero se rompió import pycurl
. Vea el error a continuación.
Probé todas las opciones con las que los usuarios afirmaron haber tenido éxito en estePublicación de desbordamiento de pilapero fue en vano.
ImportError: pycurl: libcurl link-time ssl backend (none/other) is different from compile-time ssl backend (openssl)
Mi versión de pycurl es7.43.0.3
La versión de Python es3.6.4.
[También lo probé con Catalina 1.0.2t y luego probé libressl
a continuación]
% openssl version -a
LibreSSL 2.8.3
built on: date not available
platform: information not available
options: bn(64,64) rc4(16x,int) des(idx,cisc,16,int) blowfish(idx)
compiler: information not available
OPENSSLDIR: "/private/etc/ssl"
% echo $PYCURL_SSL_LIBRARY
openssl
% echo $LDFLAGS
-L/usr/local/opt/openssl/lib
% echo $CPPFLAGS
-I/usr/local/opt/openssl/include
Probé todas las combinaciones de comandos anteriores:
% pip install --global-option="--with-openssl" --global-option=build_ext --global-option="-L/usr/local/opt/openssl/lib" --global-option="-I/usr/local/opt/openssl/include --compile --no-cache-dir" pycurl
% brew uninstall openssl
etc.
Usé easy_install.
Pero simplemente está rotoCatalina!!¿Alguien resolvió esto todavía?
Respuesta1
Lo siguiente funcionó para mí, aunque parece un poco complicado. ¿Quizás seguir con esto hasta que aparezca una solución mejor?
brew install curl-openssl
export PYCURL_SSL_LIBRARY=openssl
export PYCURL_CURL_CONFIG=/usr/local/opt/curl-openssl/bin/curl-config
export LDFLAGS='-L/usr/local/opt/openssl/lib -L/usr/local/opt/c-ares/lib -L/usr/local/opt/nghttp2/lib -L/usr/local/opt/libmetalink/lib -L/usr/local/opt/rtmpdump/lib -L/usr/local/opt/libssh2/lib -L/usr/local/opt/openldap/lib -L/usr/local/opt/brotli/lib'
export CPPFLAGS=-I/usr/local/opt/openssl/include
pip install pycurl --compile --no-cache-dir
macOS 10.15 Python 3.7.4 pycurl 7.43.0.3 OpenSSL 1.0.2t
Respuesta2
Esto funcionó para mí
pip uninstall pycurl
pip install --compile --install-option="--with-openssl" pycurl
Respuesta3
Estoy ejecutando MacOS ventura en mi MacBook Pro. Usamos Ptyhon 3.7. Lo siguiente funcionó para mí:
% python3.7 -m pip uninstall pycurl
% brew install curl
% brew install openssl
% export LDFLAGS="-L/usr/local/opt/curl/lib $LDFLAGS"
% export CPPFLAGS="-I/usr/local/opt/curl/include $CPPFLAGS"
% export PKG_CONFIG_PATH=/usr/local/opt/curl/lib/pkgconfig
% python3.7 -m pip install pycurl==7.45.2 --no-cache-dir --compile --ignore-installed --install-option="--openssl-dir=/usr/local/opt/openssl@3/"