所以:
linux: Linux 4.5.4-1-ARCH x86_64 GNU/Linux
python: Python 2.7.11
libcurl-gnutls installed
我想将 pycurl 后端从 openssl 更改为 gnutls。
export PYCURL_SSL_LIBRARY=gnutls
pip install --compile pycurl
它使用 gnutls 编译和安装 pycurl 非常完美。但是当我尝试导入 pycurl 得到这个:
>>> import pycurl
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ImportError: pycurl: libcurl link-time ssl backend (openssl) is different from compile-time ssl backend (gnutls)
我也尝试过:
export LD_PRELOAD=/usr/lib/libcurl-gnutls.so.4
export PYCURL_SSL_LIBRARY=gnutls
pip install --compile pycurl
然后我得到这个:
>>> import pycurl
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ImportError: /usr/lib/libcurl-gnutls.so.4: version `CURL_OPENSSL_4' not found (required by /usr/lib/python2.7/site-packages/pycurl.so)
如何解决这个问题?顺便说一句,它适用于 openssl 后端,但我需要 gnutls。