Mac을 High Sierra에서 Catalina로 업그레이드하면 "pycurl 가져오기"가 중단됩니다.

Mac을 High Sierra에서 Catalina로 업그레이드하면 "pycurl 가져오기"가 중단됩니다.

Mac을 High Sierra에서 Catalina로 업그레이드했는데 문제가 발생했습니다 import pycurl. 아래 오류를 참조하세요.

나는 사용자가 이 작업에서 성공했다고 주장하는 모든 옵션을 시도했습니다.스택 오버플로 게시물그러나 아무 소용이 없습니다.

ImportError: pycurl: libcurl link-time ssl backend (none/other) is different from compile-time ssl backend (openssl)

내 pycurl 버전은7.43.0.3

파이썬 버전은3.6.4.

[카탈리나 1.0.2t로도 해본 뒤 libressl아래에서 해봤습니다]

% 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

위의 모든 명령 조합을 시도했습니다.

% 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 

등.

나는 easy_install을 사용했다.

그런데 그냥 깨졌네요카탈리나!!아직 이 문제를 해결한 사람이 있나요?

답변1

약간 해킹된 것처럼 보이지만 다음은 나에게 효과적이었습니다. 더 나은 솔루션이 나올 때까지 이것을 사용할 수 있습니까?

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

답변2

이것은 나를 위해 일했습니다

pip uninstall pycurl
pip install --compile --install-option="--with-openssl" pycurl

답변3

MacBook Pro에서 MacOS Ventura를 실행하고 있습니다. 우리는 Ptyhon 3.7을 사용합니다. 다음은 나에게 효과적이었습니다.

% 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/"

관련 정보