Setup.py: install lxml with Python2.6 on CentOS

Question:

I have installed Python 2.6.6 on CentOS 5.4,

[@SC-055 lxml-2.3beta1]$ python
Python 2.6.6 (r266:84292, Jan  4 2011, 09:49:55) 
[GCC 4.1.2 20080704 (Red Hat 4.1.2-46)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> 

I want to use the lxml module, but build from sources failed:

src/lxml/lxml.etree.c:157929: error: ‘xsltLibxsltVersion’ undeclared (first use in this function)
src/lxml/lxml.etree.c:157941: error: ‘__pyx_v_4lxml_5etree_XSLT_DOC_DEFAULT_LOADER’ undeclared (first use in this function)
src/lxml/lxml.etree.c:157941: error: ‘xsltDocDefaultLoader’ undeclared (first use in this function)
src/lxml/lxml.etree.c:157950: error: ‘__pyx_f_4lxml_5etree__xslt_doc_loader’ undeclared (first use in this function)
error: command 'gcc' failed with exit status 1
Asked By: k99

||

Answers:

I had the same issue, I managed to install it after installing the package libxslt-devel and python-devel which seems to be your problem:

yum install libxslt-devel python-devel

python setup.py install

Installed /usr/lib/python2.6/site-packages/lxml-2.2.8-py2.6-linux-i686.egg
Processing dependencies for lxml==2.2.8
Finished processing dependencies for lxml==2.2.8

However since I also installed other packages in the process, you might want to double check libxml2, libxml2-devel and libxslt while you are at it.

Here is some information on how to build lxml: http://lxml.de/build.html

Answered By: bakkal

It solved my problem for nokogiri in Centos

sudo yum install -y gcc ruby-devel libxml2 libxml2-devel libxslt libxslt-devel
Answered By: user944293

these works for me

yum -y install python-devel gcc libxml2 libxml2-devel libxslt libxslt-devel

especially the python-devel

Answered By: user2754799

If the below doesn’t work

sudo yum install libxslt-devel python-devel

try this

pip install -U pip setuptools

and then install by

pip install lxml
Answered By: Sandeep G