How to install lxml dependencies on Amazon EC2 linux?

I tried:

sudo yum install libxml2-dev libxslt-dev python-dev 

and I got:

 Loaded plugins: priorities, update-motd, upgrade-helper amzn-main/latest | 2.1 kB 00:00 amzn-updates/latest | 2.3 kB 00:00 No package libxml2-dev available. No package libxslt-dev available. No package python-dev available. 

pip doesn't work either.

I received the package as follows:

 git clone --branch lxml-3.2.4 https://github.com/lxml/lxml 

Then I tried without cython because sudo python setup.py install gave me RuntimeError: ERROR: Trying to build without Cython, but pre-generated 'src/lxml/lxml.etree.c' is not available

 sudo python setup.py install --without-cython 

Then I got:

 sudo python setup.py install --without-cython Building lxml version 3.2.4. WARNING: Trying to build without Cython, but pre-generated 'src/lxml/lxml.etree.c' is not available. WARNING: Trying to build without Cython, but pre-generated 'src/lxml/lxml.objectify.c' is not available. Building without Cython. ERROR: /bin/sh: xslt-config: command not found ** make sure the development packages of libxml2 and libxslt are installed ** Using build configuration of libxslt /usr/lib64/python2.6/distutils/dist.py:266: UserWarning: Unknown distribution option: 'bugtrack_url' warnings.warn(msg) running install running bdist_egg running egg_info writing src/lxml.egg-info/PKG-INFO writing top-level names to src/lxml.egg-info/top_level.txt writing dependency_links to src/lxml.egg-info/dependency_links.txt reading manifest file 'src/lxml.egg-info/SOURCES.txt' reading manifest template 'MANIFEST.in' warning: no files found matching 'lxml.etree.c' under directory 'src/lxml' warning: no files found matching 'lxml.objectify.c' under directory 'src/lxml' warning: no files found matching 'lxml.etree.h' under directory 'src/lxml' warning: no files found matching 'lxml.etree_api.h' under directory 'src/lxml' warning: no files found matching '*.txt' under directory 'src/lxml/tests' warning: no files found matching '*.html' under directory 'doc' writing manifest file 'src/lxml.egg-info/SOURCES.txt' installing library code to build/bdist.linux-x86_64/egg running install_lib running build_py copying src/lxml/includes/lxml-version.h -> build/lib.linux-x86_64-2.6/lxml/includes running build_ext building 'lxml.etree' extension gcc -pthread -fno-strict-aliasing -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m64 -mtune=generic -D_GNU_SOURCE -fPIC -fwrapv -DNDEBUG -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m64 -mtune=generic -D_GNU_SOURCE -fPIC -fwrapv -fPIC -I/home/ec2-user/lxml/src/lxml/includes -I/usr/include/python2.6 -c src/lxml/lxml.etree.c -o build/temp.linux-x86_64-2.6/src/lxml/lxml.etree.o gcc: error: src/lxml/lxml.etree.c: No such file or directory gcc: fatal error: no input files compilation terminated. error: command 'gcc' failed with exit status 4 [ ec2-user@ip-172-31-14-83 lxml]$ 

I really need to make sure that the libxml2 and libxslt development packages are installed .

If I can do this, I hope it works. Any ideas? Thank you It seems that people have problems associated with this, but most of them are in other systems.


UPDATE: Based on Vor's suggestion, I used the -devel extension and worked on installing dependencies.

 sudo yum install libxml2-devel libxslt-devel python-devel 

Unfortunately, I get the following:

 $sudo python setup.py install --without-cython Building lxml version 3.4.0. WARNING: Trying to build without Cython, but pre-generated 'src/lxml/lxml.etree.c' is not available. WARNING: Trying to build without Cython, but pre-generated 'src/lxml/lxml.objectify.c' is not available. Building without Cython. Using build configuration of libxslt 1.1.28 Building against libxml2/libxslt in the following directory: /usr/lib64 /usr/lib64/python2.6/distutils/dist.py:266: UserWarning: Unknown distribution option: 'bugtrack_url' warnings.warn(msg) running install running bdist_egg running egg_info writing requirements to src/lxml.egg-info/requires.txt writing src/lxml.egg-info/PKG-INFO writing top-level names to src/lxml.egg-info/top_level.txt writing dependency_links to src/lxml.egg-info/dependency_links.txt reading manifest file 'src/lxml.egg-info/SOURCES.txt' reading manifest template 'MANIFEST.in' warning: no files found matching 'lxml.etree.c' under directory 'src/lxml' warning: no files found matching 'lxml.objectify.c' under directory 'src/lxml' warning: no files found matching 'lxml.etree.h' under directory 'src/lxml' warning: no files found matching 'lxml.etree_api.h' under directory 'src/lxml' warning: no files found matching '*.html' under directory 'doc' writing manifest file 'src/lxml.egg-info/SOURCES.txt' installing library code to build/bdist.linux-x86_64/egg running install_lib running build_py copying src/lxml/includes/lxml-version.h -> build/lib.linux-x86_64-2.6/lxml/includes running build_ext building 'lxml.etree' extension gcc -pthread -fno-strict-aliasing -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m64 -mtune=generic -D_GNU_SOURCE -fPIC -fwrapv -DNDEBUG -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m64 -mtune=generic -D_GNU_SOURCE -fPIC -fwrapv -fPIC -I/usr/include/libxml2 -I/home/ec2-user/lxml/src/lxml/includes -I/usr/include/python2.6 -c src/lxml/lxml.etree.c -o build/temp.linux-x86_64-2.6/src/lxml/lxml.etree.o -w gcc: error: src/lxml/lxml.etree.c: No such file or directory gcc: fatal error: no input files compilation terminated. error: command 'gcc' failed with exit status 4 
+5
source share
8 answers

I had the same problem. After this line:

 sudo yum install libxml2-devel libxslt-devel python-devel 

I tried again using

 sudo yum install lxml 

And it worked :)

+8
source
 sudo yum install libxml2-devel libxslt-devel python-devel 

add

 sudo yum install gcc 

and it worked for me.

+2
source

On CentOS, it is python-devel , not python-dev . Same thing with others.

+1
source

Broken assembly of left intermediate files in progress. try rm -rf / tmp / pip-build-root

0
source

The following worked for me:

sudo yum install libxml2-devel libxslt-devel python-devel

In an AWS EC2 instance:

Amazon Linux AMI release 2015.09

0
source

On my AWS machine, I had both python2.7 and python3.4, and I was looking for lxml installation for python3.4 - I found that I had to use

 sudo yum install python34-devel 
0
source

The problem with EC2 t.micro is that you have run out of memory to compile the lxml package.

At startup: dmesg | tail, you will see the problem

[167588.470868] Not enough memory: Kill process 9804 (cc1) score 499 or sacrifice a child [167588.475046] Killed process 9804 (cc1) total-vm: 693864kB, anon-rss: 521696kB, file-rss: 0kB

The only way is to install the python-lxml package via yum or another package manager.

0
source

Add the answer to huapito. The following code works for me. sudo yum install gcc libxml2-devel libxslt-devel python-devel sudo pip install lxml

0
source

Source: https://habr.com/ru/post/1202410/


All Articles