此次遇到的問題是在import pycurl 時報錯
pycurl:libcurl link-time version is older than compile-time version
在網上看了很多解釋和方法,但都沒有很好的解決和分析這個問題,我先說下自己的過程
1、安裝的事centos7 ,默認安裝的是python2.7,python3是后使用src安裝的,同樣先下載了curl-7.61的包和pycurl-7.43的包,應該都是最新的了
2、先make && make install 了curl-7.61,至/usr/local下,然后python3 setup.py install安裝了pycurl-7.43的包
3、在Import pycurl時報錯如上錯誤
解決過程:
查看過網上各類方法,都曾嘗試都未能很好的解決,于是靜下心來仔細讀了下報錯內容pycurl:libcurl link-time version is older than compile-time version
英文一般,所以我讀到的意思大概是libcurl連接的版本比目前編譯版本要老,于是我對比了下如下兩個文件夾的內容
/usr/lib下ll libcur*
和
/usr/local/lib 下ll libcurl*
內容分別如下
libcurl.so.4->libcurl.so.4.3.0
libcurl.so.4.3.0
和
libcurl.a
libcurl.la
libcurl.so->libcurl.so.4.5.0
libcurl.so.4->libcurl.so.4.5.0
licburl.4.5.0
那么我想是否是因為安裝pycurl時使用了/usr/lib下的libcurl.4.3.0導致的,于是先
pip3 uninstall pycurl卸載了pycurl
然后重新make && make install curl-7.61
然后進入/usr/lib 將libcurl.so.4->libcurl.so.4.3.0
刪除然后通過ln -s 創建了
libcurl.so->/usr/local/lib/libcurl.so.4.5.0
libcurl.so.4->/usr/local/lib/libcurl.so.4.5
然后重新python3 setup.py install 了pycurl
再進入python3 import pycurl 正常了,總結下
應該就是安裝pycurl時使用了舊庫導致的
以上這篇解決python3 安裝完Pycurl在import pycurl時報錯的問題就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持武林站長站。
新聞熱點
疑難解答