pyspider icon indicating copy to clipboard operation
pyspider copied to clipboard

ImportError: pycurl: libcurl link-time version (7.37.1) is older than compile-time version (7.43.0)

Open nextInnovationUcas opened this issue 9 years ago • 23 comments

hello, i got a problem. i've google many times and still can't solve it. after i pip install pyspider , and try to run pyspider.it displayed the error "Error: Could not create web server listening on port 25555 ImportError: pycurl: libcurl link-time version (7.37.1) is older than compile-time version (7.43.0)" My system is MAC OS YOSEMITE,python 3.5。

nextInnovationUcas avatar Jun 14 '16 11:06 nextInnovationUcas

The pycurl installed is linked to a different libcurl when execute. It often caused by different version/environment of pip and python. Or wrong LD_LIBRARY_PATH.

And it's a pycurl issue, you should ask in pycurl user group.

binux avatar Jun 14 '16 11:06 binux

yes,i've used pyenv to manage environment of python(2.7 & 3.5),and 2.7 is system python. maybe i've not configued well of curl link. i'll try more...

nextInnovationUcas avatar Jun 14 '16 13:06 nextInnovationUcas

i have the same problem : ImportError: pycurl: libcurl link-time version (7.43.0) is older than compile-time version (7.49.1)😢

huanghe810229530 avatar Dec 16 '16 08:12 huanghe810229530

i have the same problem :ImportError: pycurl: libcurl link-time version (7.49.1) is older than compile-time version (7.51.0)

luckduvip avatar Dec 23 '16 10:12 luckduvip

The same problem: ImportError: pycurl: libcurl link-time version (7.49.1) is older than compile-time version (7.51.0)

jizhouli avatar Dec 28 '16 03:12 jizhouli

I think is install python a lot, so i remove python2.7.11 and python2.7.13, use python2.7.10 it works.

huanghe810229530 avatar Dec 28 '16 08:12 huanghe810229530

ImportError: pycurl: libcurl link-time version (7.49.1) is older than compile-time version (7.51.0) Did anybody successfully fix this?

orenyomtov avatar Jan 02 '17 09:01 orenyomtov

no……i had left it out

在 2017年1月2日,17:25,Oren [email protected] 写道:

ImportError: pycurl: libcurl link-time version (7.49.1) is older than compile-time version (7.51.0) Did anybody successfully fix this?

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub, or mute the thread.

nextInnovationUcas avatar Jan 02 '17 09:01 nextInnovationUcas

look https://my.oschina.net/crazyharry/blog/341718

Ananleexz avatar Jan 03 '17 10:01 Ananleexz

nice

发自我的 iPhone

在 2017年1月3日,18:00,leexz [email protected] 写道:

look https://my.oschina.net/crazyharry/blog/341718

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub, or mute the thread.

nextInnovationUcas avatar Jan 03 '17 10:01 nextInnovationUcas

Okay, since this answer still pops up in the Google Search, I'll share my workaround for fixing this issue.

Main idea to install brew version of curl and force linking to get an up-to-date curl:

$ curl --version
curl 7.52.1 (x86_64-apple-darwin16.1.0) libcurl/7.52.1 OpenSSL/1.0.2j zlib/1.2.8 nghttp2/1.18.1

So you can later use pycurl, linked against your libcurl and openssl

brew install curl
brew link curl --force
brew install openssl
export LIBRARY_PATH=/usr/local/opt/openssl/lib
export CPATH=/usr/local/opt/openssl/include
pip --no-cache-dir install pycurl
python -c "import pycurl"

Hope that helps!

@binux I believe, issue can be marked as resolved!

Hiyorimi avatar Jan 18 '17 12:01 Hiyorimi

I fixed this error on Mac by upgrading to macOS Sierra.

orenyomtov avatar Jan 20 '17 15:01 orenyomtov

i fixed this error:

  1. uninstall pycurl.
    pip uninstall pycurl
  2. export LD_LIBRARY_PATH=<<your homebrew's libcurl path>>
export LD_LIBRARY_PATH=/usr/local/opt/curl/lib
export LIBRARY_PATH=/usr/local/opt/curl/lib 
  1. reinstall pycurl easy_install pycurl

seeliuh avatar Feb 03 '17 06:02 seeliuh

thinks.

在 2017年2月3日,14:32,liuhang [email protected] 写道:

i fixed this error:

uninstall pycurl. pip uninstall pycurl export LD_LIBRARY_PATH=<<your homebrew's libcurl path>> export LD_LIBRARY_PATH=/usr/local/opt/curl/lib export LIBRARY_PATH=/usr/local/opt/curl/lib reinstall pycurl easy_install pycurl — You are receiving this because you commented. Reply to this email directly, view it on GitHub https://github.com/binux/pyspider/issues/472#issuecomment-277174965, or mute the thread https://github.com/notifications/unsubscribe-auth/AHDzu3LIGNikUEmShmfOLQUww8RevobQks5rYsn_gaJpZM4I1OV5.

luckduvip avatar Feb 04 '17 13:02 luckduvip

Thanks @seeliuh It worked for me on Mac.

vinay2k2 avatar Mar 03 '17 09:03 vinay2k2

I solve this problem by this comand:

brew unlink curl && brew link curl --force pip uninstall pycurl env ARCHFLAGS="-Wno-error=unused-command-line-argument-hard-error-in-future" easy_install pycurl

rsj217 avatar Apr 28 '17 02:04 rsj217

@seeliuh Thanks. Your workaround works very well without replacing system builtin curl.

lilac avatar Jul 26 '17 15:07 lilac

Solucion para centos https://github.com/pycurl/pycurl/issues/439

christian0712 avatar Mar 27 '18 16:03 christian0712

i just solved it tho... I use peppermint... I deleted all pycurl files on my box and then reinstalled it...

ReroPhoenix avatar Feb 04 '19 13:02 ReroPhoenix

Solved by installing everything with conda. Works even in virtual environments. Reason: conda install pycurl ALSO updates libcurl to match

AnaMakarevich avatar Feb 26 '19 18:02 AnaMakarevich

ImportError: pycurl: libcurl link-time version (7.37.1) is older than compile-time version (7.43.0)

here is CentOS 7, same error:

ImportError pycurl libcurl link-time version (7.29.0) is older than compile-time version (7.64.1)

finally fix by:

solution:

reinstall a compatible version 7.43.0.1 pycurl

process:

  1. make sure system python3 installed correct pycurl
pip3 uninstall pycurl
pip3 install pycurl==7.43.0.1 --global-option="--with-nss" --no-cache-dir --ignore-installed
  1. then goto pyspider's pipenv to install pycurl
pipenv shell
pipenv uninstall pycurl
pipenv install pycurl==7.43.0.1

crifan avatar May 10 '19 10:05 crifan

you should reinstall curl library, for centos user, you can finish it with this link Install curl From Source

AlphaNext avatar Jul 30 '21 08:07 AlphaNext

Thank you very much @seeliuh. After two days of screwing with this, your solution finally worked, although I needed to use pip to finally install pycurl instead of easy_install.

You're a lifesaver.

heathf avatar Apr 07 '23 15:04 heathf