Este é o meu erro:
(mysite)zjm1126@zjm1126-G41MT-S2:~/zjm_test/mysite$ pip install lxml
Downloading/unpacking lxml
Running setup.py egg_info for package lxml
Building lxml version 2.3.
Building without Cython.
ERROR: /bin/sh: xslt-config: not found
** make sure the development packages of libxml2 and libxslt are installed **
Using build configuration of libxslt
Installing collected packages: lxml
Running setup.py install for lxml
Building lxml version 2.3.
Building without Cython.
ERROR: /bin/sh: xslt-config: not found
** make sure the development packages of libxml2 and libxslt are installed **
Using build configuration of libxslt
building 'lxml.etree' extension
gcc -pthread -fno-strict-aliasing -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes -fPIC -I/usr/include/python2.6 -c src/lxml/lxml.etree.c -o build/temp.linux-i686-2.6/src/lxml/lxml.etree.o -w
src/lxml/lxml.etree.c:4: fatal error: Python.h: 没有那个文件或目录
compilation terminated.
error: command 'gcc' failed with exit status 1
Complete output from command /home/zjm1126/zjm_test/mysite/bin/python -c "import setuptools;__file__='/home/zjm1126/zjm_test/mysite/build/lxml/setup.py';execfile(__file__)" install --single-version-externally-managed --record /tmp/pip-jOhgvD-record/install-record.txt --install-headers /home/zjm1126/zjm_test/mysite/include/site/python2.6:
Building lxml version 2.3.
Building without Cython.
ERROR: /bin/sh: xslt-config: not found
** make sure the development packages of libxml2 and libxslt are installed **
Using build configuration of libxslt
running install
running build
running build_py
running build_ext
building 'lxml.etree' extension
gcc -pthread -fno-strict-aliasing -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes -fPIC -I/usr/include/python2.6 -c src/lxml/lxml.etree.c -o build/temp.linux-i686-2.6/src/lxml/lxml.etree.o -w
src/lxml/lxml.etree.c:4: fatal error: Python.h: 没有那个文件或目录
compilation terminated.
error: command 'gcc' failed with exit status 1
----------------------------------------
Command /home/zjm1126/zjm_test/mysite/bin/python -c "import setuptools;__file__='/home/zjm1126/zjm_test/mysite/build/lxml/setup.py';execfile(__file__)" install --single-version-externally-managed --record /tmp/pip-jOhgvD-record/install-record.txt --install-headers /home/zjm1126/zjm_test/mysite/include/site/python2.6 failed with error code 1
Storing complete log in /home/zjm1126/.pip/pip.log
O que eu posso fazer?
Atualizada:
(mysite)zjm1126@zjm1126-G41MT-S2:~/zjm_test/mysite$ pip install lxml
Downloading/unpacking lxml
Running setup.py egg_info for package lxml
Building lxml version 2.3.
Building without Cython.
Using build configuration of libxslt 1.1.26
Building against libxml2/libxslt in the following directory: /usr/lib
Installing collected packages: lxml
Running setup.py install for lxml
Building lxml version 2.3.
Building without Cython.
Using build configuration of libxslt 1.1.26
Building against libxml2/libxslt in the following directory: /usr/lib
building 'lxml.etree' extension
gcc -pthread -fno-strict-aliasing -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes -fPIC -I/usr/include/libxml2 -I/usr/include/python2.6 -c src/lxml/lxml.etree.c -o build/temp.linux-i686-2.6/src/lxml/lxml.etree.o -w
src/lxml/lxml.etree.c:4: fatal error: Python.h: 没有那个文件或目录
compilation terminated.
error: command 'gcc' failed with exit status 1
Complete output from command /home/zjm1126/zjm_test/mysite/bin/python -c "import setuptools;__file__='/home/zjm1126/zjm_test/mysite/build/lxml/setup.py';execfile(__file__)" install --single-version-externally-managed --record /tmp/pip-NJw2ws-record/install-record.txt --install-headers /home/zjm1126/zjm_test/mysite/include/site/python2.6:
Building lxml version 2.3.
Building without Cython.
Using build configuration of libxslt 1.1.26
Building against libxml2/libxslt in the following directory: /usr/lib
running install
running build
running build_py
running build_ext
building 'lxml.etree' extension
gcc -pthread -fno-strict-aliasing -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes -fPIC -I/usr/include/libxml2 -I/usr/include/python2.6 -c src/lxml/lxml.etree.c -o build/temp.linux-i686-2.6/src/lxml/lxml.etree.o -w
src/lxml/lxml.etree.c:4: fatal error: Python.h: 没有那个文件或目录
compilation terminated.
error: command 'gcc' failed with exit status 1
----------------------------------------
Command /home/zjm1126/zjm_test/mysite/bin/python -c "import setuptools;__file__='/home/zjm1126/zjm_test/mysite/build/lxml/setup.py';execfile(__file__)" install --single-version-externally-managed --record /tmp/pip-NJw2ws-record/install-record.txt --install-headers /home/zjm1126/zjm_test/mysite/include/site/python2.6 failed with error code 1
Storing complete log in /home/zjm1126/.pip/pip.log
o registro:
------------------------------------------------------------
/home/zjm1126/zjm_test/mysite/bin/pip run on Thu Mar 3 17:07:27 2011
Downloading/unpacking mysql-python
Running setup.py egg_info for package mysql-python
running egg_info
creating pip-egg-info/MySQL_python.egg-info
writing pip-egg-info/MySQL_python.egg-info/PKG-INFO
writing top-level names to pip-egg-info/MySQL_python.egg-info/top_level.txt
writing dependency_links to pip-egg-info/MySQL_python.egg-info/dependency_links.txt
writing pip-egg-info/MySQL_python.egg-info/PKG-INFO
writing top-level names to pip-egg-info/MySQL_python.egg-info/top_level.txt
writing dependency_links to pip-egg-info/MySQL_python.egg-info/dependency_links.txt
writing manifest file 'pip-egg-info/MySQL_python.egg-info/SOURCES.txt'
warning: manifest_maker: standard file '-c' not found
reading manifest file 'pip-egg-info/MySQL_python.egg-info/SOURCES.txt'
reading manifest template 'MANIFEST.in'
warning: no files found matching 'MANIFEST'
warning: no files found matching 'ChangeLog'
warning: no files found matching 'GPL'
writing manifest file 'pip-egg-info/MySQL_python.egg-info/SOURCES.txt'
Installing collected packages: mysql-python
Running setup.py install for mysql-python
Running command /home/zjm1126/zjm_test/mysite/bin/python -c "import setuptools;__file__='/home/zjm1126/zjm_test/mysite/build/mysql-python/setup.py';execfile(__file__)" install --single-version-externally-managed --record /tmp/pip-XuVIux-record/install-record.txt --install-headers /home/zjm1126/zjm_test/mysite/include/site/python2.6
running install
running build
running build_py
creating build
creating build/lib.linux-i686-2.6
copying _mysql_exceptions.py -> build/lib.linux-i686-2.6
creating build/lib.linux-i686-2.6/MySQLdb
copying MySQLdb/__init__.py -> build/lib.linux-i686-2.6/MySQLdb
copying MySQLdb/converters.py -> build/lib.linux-i686-2.6/MySQLdb
copying MySQLdb/connections.py -> build/lib.linux-i686-2.6/MySQLdb
copying MySQLdb/cursors.py -> build/lib.linux-i686-2.6/MySQLdb
copying MySQLdb/release.py -> build/lib.linux-i686-2.6/MySQLdb
copying MySQLdb/times.py -> build/lib.linux-i686-2.6/MySQLdb
creating build/lib.linux-i686-2.6/MySQLdb/constants
copying MySQLdb/constants/__init__.py -> build/lib.linux-i686-2.6/MySQLdb/constants
copying MySQLdb/constants/CR.py -> build/lib.linux-i686-2.6/MySQLdb/constants
copying MySQLdb/constants/FIELD_TYPE.py -> build/lib.linux-i686-2.6/MySQLdb/constants
copying MySQLdb/constants/ER.py -> build/lib.linux-i686-2.6/MySQLdb/constants
copying MySQLdb/constants/FLAG.py -> build/lib.linux-i686-2.6/MySQLdb/constants
copying MySQLdb/constants/REFRESH.py -> build/lib.linux-i686-2.6/MySQLdb/constants
copying MySQLdb/constants/CLIENT.py -> build/lib.linux-i686-2.6/MySQLdb/constants
running build_ext
building '_mysql' extension
creating build/temp.linux-i686-2.6
gcc -pthread -fno-strict-aliasing -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes -fPIC -Dversion_info=(1,2,3,'final',0) -D__version__=1.2.3 -I/usr/include/mysql -I/usr/include/python2.6 -c _mysql.c -o build/temp.linux-i686-2.6/_mysql.o -DBIG_JOINS=1 -fno-strict-aliasing -DUNIV_LINUX -DUNIV_LINUX
In file included from _mysql.c:29:
pymemcompat.h:10: fatal error: Python.h: 没有那个文件或目录
compilation terminated.
error: command 'gcc' failed with exit status 1
Complete output from command /home/zjm1126/zjm_test/mysite/bin/python -c "import setuptools;__file__='/home/zjm1126/zjm_test/mysite/build/mysql-python/setup.py';execfile(__file__)" install --single-version-externally-managed --record /tmp/pip-XuVIux-record/install-record.txt --install-headers /home/zjm1126/zjm_test/mysite/include/site/python2.6:
running install
running build
running build_py
creating build
creating build/lib.linux-i686-2.6
copying _mysql_exceptions.py -> build/lib.linux-i686-2.6
creating build/lib.linux-i686-2.6/MySQLdb
copying MySQLdb/__init__.py -> build/lib.linux-i686-2.6/MySQLdb
copying MySQLdb/converters.py -> build/lib.linux-i686-2.6/MySQLdb
copying MySQLdb/connections.py -> build/lib.linux-i686-2.6/MySQLdb
copying MySQLdb/cursors.py -> build/lib.linux-i686-2.6/MySQLdb
copying MySQLdb/release.py -> build/lib.linux-i686-2.6/MySQLdb
copying MySQLdb/times.py -> build/lib.linux-i686-2.6/MySQLdb
creating build/lib.linux-i686-2.6/MySQLdb/constants
copying MySQLdb/constants/__init__.py -> build/lib.linux-i686-2.6/MySQLdb/constants
copying MySQLdb/constants/CR.py -> build/lib.linux-i686-2.6/MySQLdb/constants
copying MySQLdb/constants/FIELD_TYPE.py -> build/lib.linux-i686-2.6/MySQLdb/constants
copying MySQLdb/constants/ER.py -> build/lib.linux-i686-2.6/MySQLdb/constants
copying MySQLdb/constants/FLAG.py -> build/lib.linux-i686-2.6/MySQLdb/constants
copying MySQLdb/constants/REFRESH.py -> build/lib.linux-i686-2.6/MySQLdb/constants
copying MySQLdb/constants/CLIENT.py -> build/lib.linux-i686-2.6/MySQLdb/constants
running build_ext
building '_mysql' extension
creating build/temp.linux-i686-2.6
gcc -pthread -fno-strict-aliasing -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes -fPIC -Dversion_info=(1,2,3,'final',0) -D__version__=1.2.3 -I/usr/include/mysql -I/usr/include/python2.6 -c _mysql.c -o build/temp.linux-i686-2.6/_mysql.o -DBIG_JOINS=1 -fno-strict-aliasing -DUNIV_LINUX -DUNIV_LINUX
In file included from _mysql.c:29:
pymemcompat.h:10: fatal error: Python.h: 没有那个文件或目录
compilation terminated.
error: command 'gcc' failed with exit status 1
----------------------------------------
Command /home/zjm1126/zjm_test/mysite/bin/python -c "import setuptools;__file__='/home/zjm1126/zjm_test/mysite/build/mysql-python/setup.py';execfile(__file__)" install --single-version-externally-managed --record /tmp/pip-XuVIux-record/install-record.txt --install-headers /home/zjm1126/zjm_test/mysite/include/site/python2.6 failed with error code 1
Exception information:
Traceback (most recent call last):
File "/home/zjm1126/zjm_test/mysite/lib/python2.6/site-packages/pip-0.8.1-py2.6.egg/pip/basecommand.py", line 130, in main
self.run(options, args)
File "/home/zjm1126/zjm_test/mysite/lib/python2.6/site-packages/pip-0.8.1-py2.6.egg/pip/commands/install.py", line 228, in run
requirement_set.install(install_options, global_options)
File "/home/zjm1126/zjm_test/mysite/lib/python2.6/site-packages/pip-0.8.1-py2.6.egg/pip/req.py", line 1043, in install
requirement.install(install_options, global_options)
File "/home/zjm1126/zjm_test/mysite/lib/python2.6/site-packages/pip-0.8.1-py2.6.egg/pip/req.py", line 559, in install
cwd=self.source_dir, filter_stdout=self._filter_install, show_stdout=False)
File "/home/zjm1126/zjm_test/mysite/lib/python2.6/site-packages/pip-0.8.1-py2.6.egg/pip/__init__.py", line 249, in call_subprocess
% (command_desc, proc.returncode))
InstallationError: Command /home/zjm1126/zjm_test/mysite/bin/python -c "import setuptools;__file__='/home/zjm1126/zjm_test/mysite/build/mysql-python/setup.py';execfile(__file__)" install --single-version-externally-managed --record /tmp/pip-XuVIux-record/install-record.txt --install-headers /home/zjm1126/zjm_test/mysite/include/site/python2.6 failed with error code 1
Respostas:
Na documentação do lxml , assumindo que você esteja executando uma distribuição baseada no Debian:
Para sistemas baseados no Debian, deve ser suficiente instalar as dependências conhecidas de compilação
python-lxml
oupython3-lxml
, por exemplo,fonte
Python.h
está faltando, então instale também o python2.6-dev:sudo apt-get install python2.6-dev
Isso funcionou para mim:
fonte
Caso esteja usando o Ubuntu / Lubuntu 13.04 ou Ubuntu 13.10 e com problemas com "/ usr / bin / ld: não é possível encontrar -lz", você também pode instalar o pacote zlib1g-dev:
Coloque tudo junto:
fonte
zlib1g-dev
era a biblioteca que faltava para mim também, no Ubuntu 14.04.Não, você está perdendo os arquivos de cabeçalho Python. Isso acontece principalmente no Linux quando você está usando o sistema Python (há razões para não fazer isso , mas essa é uma pergunta diferente).
Você provavelmente precisa instalar algum pacote, e provavelmente é chamado python-dev ou python-devel.
ou
Ou algo assim.
fonte
python2.6-dev
.python3-dev
para trabalhar em python3Resolvi esse problema aumentando a RAM do meu servidor.
Eu estava executando apenas 512 MB e, quando atualizei para 1 GB, não tive nenhum problema.
Também instalei todos os pacotes manualmente antes disso, na tentativa de corrigir o problema, mas não tenho certeza se essa é uma etapa necessária.
fonte
No Windows , tive o mesmo erro no Windows ao tentar instalar manualmente no Python 3.4 após ter sido instalado no 3.3. Finalmente consegui resolvê-lo instalando o wheel e executando o pip a partir do diretório Python34.
1) roda de download a partir daqui: http://www.lfd.uci.edu/~gohlke/pythonlibs/#lxml
2)
cd Python34\Scripts
3)
pip.exe C:\Users\Home\Downloads\lxml- ......... .whl
fonte
pip.exe install C:\Users\<user>\Downloads\lxml-3.6.4-cp35-cp35m-win_amd64.whl
basta instalar os requisitos:
Agora, você pode instalá-lo com a ferramenta de gerenciamento de pacotes pip:
fonte
fonte
Estou usando o Ubuntu 14.04 e isso resolve o problema para mim
fonte
fonte
Instalar um binário lxml faria o truque. Verifique isto
fonte
e tente atualizar as ferramentas de instalação do python
isso deve resolver isso.
fonte
Eu estava tendo esse problema com uma instalação de pip do lxml. Minha instância do CentOS estava usando python 2.6, que estava lançando esse erro.
Para contornar isso, fiz o seguinte para executar com o Python 2.7:
sudo yum install python-devel
sudo yum install libxslt-devel libxml2-devel
/usr/bin/python2.7 YOUR_PYTHON_COMMAND
(para mim foi/usr/bin/python2.7 -m pip install lxml
)fonte
pymemcompat.h:10: fatal error: Python.h: 没有那个文件或目录
Rapaz, você deve postar seu log de erros
LANG=C
ou as pessoas não conseguem obter a causa real do seu log. O log acima diz: Não existe esse arquivo ou diretório.Isso significa que você deve instalar o pacote de desenvolvimento do Python. Isso geralmente é "python-dev" na distribuição com sabor Debian e "python-devel" na distribuição com sabor RHEL.
fonte
Todas as respostas acima supõem que o usuário tenha acesso a uma conta privilegiada / raiz para instalar as bibliotecas necessárias. Para instalá-lo localmente, você precisará executar as seguintes etapas. Apenas mostrou a visão geral, pois as etapas podem se envolver um pouco, dependendo das dependências que você pode estar perdendo
1.Download e compilação libxml2-2.9.1 & libxslt-1.1.28 (as versões podem mudar)
2. Configure cada caminho de instalação para libxml e libxslt como um diretório local usando o configure. Ex.
./configure --prefix=/home_dir/dependencies/libxslt_path
3.Execute
make
entãomake install
4. Baixe e compile o lxml da fonte
fonte
Isso funciona para mim, 12.04, python2.7.6
fonte
Eu sei que estou atrasado para o show,
Mas isso ajudará se nada mais der certo
A configuração de TMPDIR garantirá que a compilação possa executar tudo o que precisa ser executado, e a configuração de STATIC_DEPS solicitará que você puxe suas próprias libxml2 e libxslt2, em vez de usar as versões antigas instaladas no servidor.
fonte
Usando o cygwin 64 com o Windows 8.
Eu tenho...
Eu tentei de tudo até perceber que uma nova cadeia de ferramentas cygwin atrapalhava a lógica python. O cygwin instala um compilador chamado "realgcc" que não é real gcc .
Solução
Instale o gcc. Ex:
fonte
A única coisa que me ajudou foi
fonte
Eu tenho o mesmo erro no meu Linux machine.If você ir ao seu website que está em sua documentação como well.So se você receber esse tipo de erro na máquina Linux , por favor experimentar esses comandos,
# apt install libxml2-dev libxslt-dev python-dev
# pip install lxml==3.4.4
fonte
Estou usando o Ubuntu 12, e isso funciona para mim:
fonte
Se você instalou o libxml2 e o libxslt, talvez seja necessário criar um link simbólico entre o caminho libxml2 e libxslt para o caminho de inclusão do python2.6. Além disso, você pode tentar adicionar o argumento do ambiente INCLUDE. Como o comando gcc apenas pesquisa este caminho: -I / usr / include / python2.6.
fonte
O arquivo abaixo funcionou para mim no Windows https://pypi.python.org/pypi/lxml/3.3.3#downloads
fonte
No osx 10.10.5 e em um virtualenv, talvez você possa resolver esse problema como abaixo:
fonte
Eu trabalho em uma máquina Windows. E aqui estão alguns indicadores para a instalação bem-sucedida do lxml (com python 2.6 e posterior).
Tenha o seguinte instalado:
Todos não estão disponíveis em a
pip install
.O binário de janelas do libxml2 é encontrado aqui .
A libxslt é encontrada aqui .
Depois de concluir os dois acima,
fazer:
pip install lxml
.Outra solução alternativa é usar as versões estáveis do PyPI ou os binários não oficiais do Windows de Christoph Gohlke ( encontrado aqui ).
fonte
Usando o Windows 7 com Cygwin, me deparei com:
Corrigi-o instalando
mingw64-x86_64-libxslt
fonte
Para Windows:
fonte
Esses dois pacotes precisam ser instalados separadamente e geralmente não podem ser instalados usando
pip
... Portanto, para o FreeBSD:Você deve estar pronto para ir ...
fonte