ข้อผิดพลาดในการติดตั้ง libxml โดยใช้ pip


269

นี่คือข้อผิดพลาดของฉัน:

(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

ฉันจะทำอย่างไร

updated:

(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

บันทึก:

------------------------------------------------------------
/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

1
มันกลับกลายเป็นปัญหาหน่วยความจำ โปรดอ้างถึงstackoverflow.com/a/26762938/578989
Mayank Jaiswal

คำตอบ:


480

** ตรวจสอบให้แน่ใจว่ามีการติดตั้งแพ็คเกจการพัฒนาของ libxml2 และ libxslt **

จากเอกสารคู่มือlxmlสมมติว่าคุณใช้การแจกจ่ายแบบเดเบียน:

sudo apt-get install libxml2-dev libxslt-dev python-dev

สำหรับระบบที่ใช้เดเบียนมันควรจะเพียงพอที่จะติดตั้งการพึ่งพาการสร้างที่รู้จักpython-lxmlหรือpython3-lxmlเช่น

sudo apt-get build-dep python3-lxml

12
Python.hขาดหายไปดังนั้นให้ติดตั้ง python2.6-dev ด้วย:sudo apt-get install python2.6-dev
Jabba

17
sudo apt-get install libxml2-dev libxslt1-dev python-dev
daonb

5
ในระบบที่ใช้ Red Hat (Red Hat, Suse, CentOS) ให้แทนที่ dev ในชื่อแพ็คเกจโดย devel ดังนั้นสิ่งที่ถูกต้องคือ: python-devel, libxml2-devel, libxslt-devel
Alan Evangelista

3
ฉันเพิ่งหายไป: sudo apt-get install libxslt1-dev
David

13
ฉันใช้ Windows 7 x64 ฉันจะติดตั้ง libxml2 และ libxslt1 ได้อย่างไร
มิ ธ ริล

107

สิ่งนี้ใช้ได้กับฉัน:

yum install libxslt-devel libxml2-devel

ฉันยืนยันสิ่งนี้ใน Fedora 18.
Cacovsky

5
Cent OS 6.4 พร้อมด้วย python-2.7
florin.bunau

ยืนยันใน Fedora 19 สำหรับการติดตั้ง pip lxml
อัปเกรด

ยืนยันสำหรับ rhel 6 python 2.7
МатиТернер

คำตอบที่ดี ทำงานให้ฉันใน linux ทางวิทยาศาสตร์
Yondaime008

76

ในกรณีที่คุณใช้ Ubuntu / Lubuntu 13.04 หรือ Ubuntu 13.10 และมีปัญหากับ "/ usr / bin / ld: ไม่พบ -lz" คุณอาจต้องติดตั้งแพ็คเกจ zlib1g-dev ด้วย:

sudo apt-get install -y zlib1g-dev

รวมทุกอย่างเข้าด้วยกัน:

sudo apt-get install -y libxml2-dev libxslt1-dev zlib1g-dev python3-pip
sudo pip3 install lxml

อย่าวางเครื่องหมายจุลภาคระหว่างชื่อแพ็คเกจ มิฉะนั้นคำตอบที่สมบูรณ์แบบ
jrvidotti

ควรปรากฏที่ด้านบน
igaurav

6
ฉันต้องติดตั้งแพ็คเกจนี้สำหรับ Ubuntu 14.04 LTS เช่นกัน
RaSi

3
นี่เป็นคำตอบเดียวในหัวข้อนี้ที่ฉันใช้งานได้สำหรับ Ubuntu 14.04LTS 2 ปีต่อมา :) ขอบคุณ
bosnjak

3
ใช่แล้วzlib1g-devlib ที่ขาดหายไปสำหรับฉันก็เช่นกันบน Ubuntu 14.04
คดี

33

ไม่คุณไม่มีไฟล์ส่วนหัวของ Python สิ่งนี้ส่วนใหญ่เกิดขึ้นบน Linux เมื่อคุณใช้ระบบ Python (มีเหตุผลที่จะไม่ทำเช่นนั้นแต่นั่นเป็นคำถามที่แตกต่างกัน)

คุณอาจต้องติดตั้งแพ็กเกจและอาจเรียกว่า python-dev หรือ python-devel

 sudo yum install python-devel

หรือ

 sudo aptitude install python-dev

หรือบางอย่าง


4
และทำไมต้อง downvote นี่คือคำตอบที่ถูกต้อง มันบอกว่า "Python.h 没有那个文件或目录" ซึ่งหมายความว่า "ไม่มีไฟล์หรือไดเรกทอรีดังกล่าว" ไฟล์ส่วนหัวของไพ ธ อนหายไป ติดตั้งและใช้งานได้
Lennart Regebro

1
คำตอบนั้นถูกต้อง python2.6-devในกรณีของฉันฉันมีการติดตั้ง
Jabba

ขอบคุณนี่คือเหตุผลที่ฉันมีปัญหา
GoTTimw

2
นี่เป็นปัญหาของฉันเช่นกันยกเว้นว่าฉันต้องpython3-devทำงานกับ python3
Paul Nelson Baker

10

ฉันแก้ไขปัญหานี้โดยเพิ่ม ram เซิร์ฟเวอร์ของฉัน

ฉันทำงานเพียง 512 MB และเมื่อฉันอัพเกรดเป็น 1 GB ฉันก็ไม่มีปัญหา

ฉันยังติดตั้งทุกแพ็คเกจด้วยตนเองก่อนหน้านี้เพื่อพยายามแก้ไขปัญหา แต่ฉันไม่แน่ใจว่านี่เป็นขั้นตอนที่จำเป็นหรือไม่


ฉันช่วย แต่ในกรณีอื่น นี่คือสถานะทางออก gcc 1. ในกรณีของฉันมันคือ 4 (ดูstackoverflow.com/questions/16149613/ …
silentser

นี้แก้ไขให้ฉันใช้ boo2docker vm RAM เพิ่มขึ้น ขอบคุณ!
เปาโล

ขอบคุณ! ฉันมีปัญหานี้ใน VM คนจรจัดและมันแก้ไขได้
cjauvin

นี่เป็นคำตอบที่สอนให้คุณเลื่อนดูคำตอบที่ยอมรับ นี่เป็นการประหยัดเวลาครั้งใหญ่
Phillip Martin

ใช่นี่เป็นปัญหาสำหรับผู้ใช้ virtualization (Vagrant) ขอบคุณนี้แก้ปัญหาของฉัน
kerbrose

8

ใน Windows ฉันมีข้อผิดพลาดเดียวกันบน windows เมื่อพยายามติดตั้งด้วยตนเองใน Python 3.4 หลังจากติดตั้งบน 3.3 ในที่สุดฉันก็สามารถแก้ปัญหาได้โดยติดตั้งล้อเลื่อนและใช้ pip จากไดเรกทอรี Python34

1) ดาวน์โหลด wheel จากที่นี่: http://www.lfd.uci.edu/~gohlke/pythonlibs/#lxml

2) cd Python34\Scripts

3) pip.exe C:\Users\Home\Downloads\lxml- ......... .whl


1
สำหรับ Python 3.5 คุณจำเป็นต้องมีคำสั่ง 'install': pip.exe install C:\Users\<user>\Downloads\lxml-3.6.4-cp35-cp35m-win_amd64.whl
Kent Kruckeberg

ข้อผิดพลาด: lxml-4.4.1-pp372-pp372-win32.whl ไม่ใช่วงล้อที่รองรับบนแพลตฟอร์มนี้ ฉันใช้ windows 10 ฉันได้รับข้อผิดพลาดเดียวกันพยายามติดตั้ง amd64 version
Calydon

7

เพียงแค่ติดตั้งข้อกำหนด:

sudo apt-get install libxml2-dev libxslt-dev python-dev

ตอนนี้คุณสามารถติดตั้งด้วยเครื่องมือการจัดการแพคเกจ pip:

pip install lxml

6
error: command 'gcc' failed with exit status 1

yum remove audit
yum install gcc
yum install libxslt-devel libxml2-devel

cd lxml-x.x.x
python setup.py build
python setup.py install

6

ฉันใช้ Ubuntu 14.04 และนี่แก้ปัญหาให้ฉันได้

sudo apt-get build-dep python3-lxml
sudo apt-get install libxml2-dev libxslt-dev python-dev

นี่คือสิ่งที่แก้ไขให้ฉัน โดยเฉพาะอย่างยิ่ง 'apt-get install python-lxml'
Jason Paw



4
sudo apt install libxslt-dev libxml2-dev

จากนั้นลองอัปเกรดชุดเครื่องมืองูหลาม

pip install -U pip setuptools

สิ่งนี้ควรแก้ไข


ขอบคุณสิ่งนี้ใช้ได้กับฉันด้วยเช่นกันสำหรับคำสั่ง: คำสั่ง 'x86_64-linux-gnu-gcc' ล้มเหลวด้วยสถานะออก 1
Fabrizio

3

ฉันมีปัญหานี้ด้วยการติดตั้ง pip ของ lxml อินสแตนซ์ CentOS ของฉันใช้ python 2.6 ซึ่งกำลังส่งข้อผิดพลาดนี้

ในการหลีกเลี่ยงสิ่งนี้ฉันได้ทำสิ่งต่อไปนี้เพื่อทำงานกับ Python 2.7:

  1. วิ่ง: sudo yum install python-devel
  2. วิ่ง sudo yum install libxslt-devel libxml2-devel
  3. ใช้ Python 2.7 เพื่อรันคำสั่งของคุณโดยใช้/usr/bin/python2.7 YOUR_PYTHON_COMMAND (สำหรับฉันแล้ว/usr/bin/python2.7 -m pip install lxml)

2

pymemcompat.h:10: fatal error: Python.h: 没有那个文件或目录

เด็กชายคุณควรโพสต์บันทึกข้อผิดพลาดของคุณด้วยLANG=Cหรือคนอื่นไม่สามารถหาสาเหตุที่แท้จริงจากบันทึก บันทึกด้านบนพูดว่า: ไม่มีไฟล์หรือไดเรกทอรีดังกล่าว

หมายความว่าคุณควรติดตั้งแพ็คเกจพัฒนาของ Python โดยปกติแล้วจะเป็น "python-dev" บนเครื่องปรุงรสเดเบียนและ "python-devel" บนเครื่องกลั่นรส RHEL


คุณกำลังตอบคำถาม 3 ปี ;-)
Martin Tournoij

2

คำตอบทั้งหมดข้างต้นถือว่าผู้ใช้มีสิทธิ์เข้าถึงบัญชี / สิทธิพิเศษในการติดตั้งไลบรารีที่ต้องการ หากต้องการติดตั้งในเครื่องคุณต้องทำตามขั้นตอนต่อไปนี้ แสดงภาพรวมเท่านั้นเนื่องจากขั้นตอนอาจเกี่ยวข้องเล็กน้อยขึ้นอยู่กับการอ้างอิงที่คุณอาจหายไป

1. ดาวน์โหลดและรวบรวม libxml2-2.9.1 & libxslt-1.1.28 (รุ่นอาจมีการเปลี่ยนแปลง)

2. กำหนดค่าแต่ละพา ธ การติดตั้งสำหรับทั้ง libxml และ libxslt ให้เป็นไดเรกทอรีภายในเครื่องโดยใช้การกำหนดค่า อดีต./configure --prefix=/home_dir/dependencies/libxslt_path

3. เรียกใช้makeแล้วmake install

4. ดาวน์โหลดและรวบรวม lxml จากแหล่งที่มา



2

ฉันรู้ว่าฉันมาสาย

แต่สิ่งนี้จะช่วยได้หากไม่มีสิ่งใดได้ผล

mkdir ~/tmp
export TMPDIR=~/tmp
STATIC_DEPS=true easy_install-2.7 lxml

การตั้งค่า TMPDIR จะทำให้แน่ใจว่าบิลด์สามารถรันทุกอย่างที่จำเป็นต้องรันและการตั้งค่า STATIC_DEPS จะบอกให้ดึงมันใน libxml2 และ libxslt2 ของตัวเองแทนที่จะใช้เวอร์ชันเก่าที่ติดตั้งบนเซิร์ฟเวอร์


1

การใช้ cygwin 64 กับ Windows 8

ฉันได้รับ...

pip ติดตั้ง lxml (... )

gcc -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -ggdb -O2 -pipe -Wimplicit-function-declaration -fdebug-prefix-map=/usr/src/ports/python3/python3-3.2.5-4.x86_64/build=/usr/src/debug/python3-3.2.5-4 -fdebug-prefix-map=/usr/src/ports/python3/python3-3.2.5-4.x86_64/src/Python-3.2.5=/usr/src/debug/python3-3.2.5-4 -I/usr/include/libxml2 -I/tmp/pip-build-b8ybku/lxml/src/lxml/includes -I/usr/include/python3.2m -c src/lxml/lxml.etree.c -o build/temp.cygwin-1.7.34-x86_64-3.2/src/lxml/lxml.etree.o -w

src/lxml/lxml.etree.c:8:22: fatal error: pyconfig.h: No such file or directory

compilation terminated.

/usr/lib/python3.2/distutils/dist.py:257: UserWarning: Unknown distribution option: 'bugtrack_url'

  warnings.warn(msg)

error: command 'gcc' failed with exit status 1

----------------------------------------
Command "/usr/bin/python3.2m -c "import setuptools, tokenize;__file__='/tmp/pip-build-b8ybku/lxml/setup.py';exec(compile(getattr(tokenize, 'open', open)(__file__).read().replace('\r\n', '\n'), __file__, 'exec'))" install --record /tmp/pip-u3vwj8-record/install-record.txt --single-version-externally-managed --compile" failed with error code 1 in /tmp/pip-build-b8ybku/lxml

ฉันได้ลองทุกอย่างจนกว่าฉันจะรู้ว่า cygwin toolchain ตัวใหม่ได้ทำลอจิกหลาม cygwin ติดตั้งคอมไพเลอร์ชื่อ "realgcc" ที่ไม่ใช่ของจริง gcc

สารละลาย

ติดตั้ง gcc Ex:

 apt-cyg install gcc-g++

ดี .. มันใช้งานได้สำหรับฉัน .. ความแตกต่างเพียงอย่างเดียวคือฉันใช้ Windows 7
robnardo


1

ฉันได้รับข้อผิดพลาดเดียวกันในเครื่อง Linux ของฉันหากคุณไปที่เว็บไซต์ของพวกเขาที่อยู่ในเอกสารประกอบเช่นกันดังนั้นหากคุณได้รับข้อผิดพลาดประเภทนี้ในเครื่อง Linuxโปรดลองใช้คำสั่งเหล่านี้

# apt install libxml2-dev libxslt-dev python-dev

# pip install lxml==3.4.4


0

ฉันใช้ Ubuntu 12 และสิ่งนี้ใช้ได้กับฉัน:

sudo apt-get install libxml2-dev
sudo apt-get install libxslt1-dev
sudo apt-get install python-dev
sudo apt-get install lxml

0

หากคุณติดตั้ง libxml2 และ libxslt คุณอาจต้องสร้างลิงก์สัญลักษณ์ระหว่างเส้นทาง libxml2 และ libxslt ไปยัง python2.6 ซึ่งรวมถึงเส้นทาง นอกจากนี้คุณสามารถลองเพิ่มอาร์กิวเมนต์ของสภาพแวดล้อม INCLUDE เนื่องจากคำสั่ง gcc ค้นหาพา ธ นี้เท่านั้น: -I / usr / include / python2.6



0

บน osx 10.10.5 และ virtualenv บางทีคุณสามารถแก้ไขปัญหาดังกล่าวได้ด้านล่าง:

sudo C_INCLUDE_PATH=/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.11.sdk/usr/include/libxml2:/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.11.sdk/usr/include/libxml2/libxml:/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.11.sdk/usr/include pip install -r lxml

ซึ่งอาจเป็นประโยชน์ใน osx รุ่นก่อนหน้า
jason0916

0

ฉันทำงานกับเครื่อง Windows และนี่คือตัวชี้บางประการสำหรับการติดตั้ง lxml ที่สำเร็จ (ด้วย python 2.6 และใหม่กว่า)

มีการติดตั้งต่อไปนี้:

  1. MingGW
  2. libxml2 รุ่น 2.7.0 หรือใหม่กว่า
  3. libxslt รุ่น 1.1.23 หรือใหม่กว่า

pip installทั้งหมดจะไม่สามารถใช้ได้ใน

libxml2 หน้าต่างไบนารีพบที่นี่

libxslt พบที่นี่

หลังจากที่คุณทำกับทั้งสองข้างต้น

pip install lxmlทำ:

วิธีแก้ปัญหาอื่นคือการใช้การเผยแพร่ที่เสถียรจาก PyPI หรือไบนารี Windows ที่ไม่เป็นทางการโดย Christoph Gohlke (ดูที่นี่ )


0

ใช้ Windows 7 กับ Cygwin ฉันเจอ:

Compile failed: command 'gcc' failed with exit status 1
cc -I/usr/include/libxml2 -I/usr/include/libxml2 -c /tmp/xmlXPathInitZsgdMQ.c -o tmp/xmlXPathInitZsgdMQ.o
*********************************************************************************
Could not find function xmlCheckVersion in library libxml2. Is libxml2 installed?
*********************************************************************************
error: command 'gcc' failed with exit status 1

ฉันแก้ไขโดยการติดตั้ง mingw64-x86_64-libxslt



0

แพคเกจทั้งสองนี้จำเป็นต้องติดตั้งแยกต่างหากและไม่สามารถติดตั้งโดยใช้pip... ดังนั้นสำหรับ FreeBSD:

Download a compressed snapshot of the Ports Collection into /var/db/portsnap:
# portsnap fetch
When running Portsnap for the first time, extract the snapshot into /usr/ports:
# portsnap extract
After the first use of Portsnap has been completed as shown above, /usr/ports can be updated as needed by running:
# portsnap fetch
# portsnap update

Now Install:
cd /usr/ports/textproc/libxml2
make install clean

cd /usr/ports/textproc/libxslt
make install clean

คุณน่าจะดีไป ...

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.