Friday, February 11, 2011

Fatal Python error: pycurl: libcurl link-time version is older than compile-time version

■ Incident  : Fatal Python error: pycurl: libcurl link-time version is older than compile-time version
■ OS Environment : Linux[RHEL, Centos]
■ Libraries :  libcurl
■ History : 
         I got the same error messages when I was installing another packages using yum. However to sort it out this error it took around 4 hours. As per the error message I know that old libcurl is being used rather than compiled libcurl. The reason is that I had to installed curl using source and I knew that curl already existed. My intention was to install updated curl on my WS. However, this made the problem to use the pycurl. Yum uses python-pycurl and curl depends on libcurl. This is the basic scenario. I sated this so that you can also sort it out this type issues by yourself using basic concept.

Error : 
$ yum update

Fatal Python error: pycurl: libcurl link-time version is older than compile-time version
Aborted

1. Find libcurl : 

$ locate libcurl

2. Then remove or rename all the libraries of libcurl.
3. Make a sym link :

$cd /usr/lib64/
$ ln -s libcurl.so.4 libcurl.so.4.1.1

4. Copy libcurl.so.4.1.1 from remote RHEL 6 server :

$cd /usr/lib64/
$ scp -r root@remote_RHEL6_server_ip:/usr/lib64/libcurl.so.4.1.1 ./

5. Checked md5sum of the files on both machine(You'll get a md5 ID and both will be same. This is to make it sure that data has not been lost. If both IDs are different then data has corrupted or lost. Need to copy in another way) :

$ md5sum libcurl.so.4.1.1

6. Download latest ;libcurl : 

$ cd /usr/local/src/
$ wget url_of_the_above_package

7. Upgrade this package  :

$ rpm -Uvh libcurl-7.19.7-16.el6.x86_64.rpm

8. update database :

$updatedb
$ldconfig

9. Now, you need to register your machine(if RHEL) with the RHN repo. Just execute following command and provide your RHN login details and proceed.

$rhn_register

10. Once you re-register the system execute the following command :

$yum clean all
$yum -y upgrade yum yum-rhn-plugin;
$yum update

11. Now you can install your desired package.


No comments:

Post a Comment