Saya ingin menginstal Lxml sehingga saya dapat menginstal Scrapy.
Ketika saya memperbarui Mac saya hari ini, saya tidak dapat menginstal ulang lxml, saya mendapatkan kesalahan berikut:
In file included from src/lxml/lxml.etree.c:314:
/private/tmp/pip_build_root/lxml/src/lxml/includes/etree_defs.h:9:10: fatal error: 'libxml/xmlversion.h' file not found
#include "libxml/xmlversion.h"
^
1 error generated.
error: command 'cc' failed with exit status 1
Saya telah mencoba menggunakan brew untuk menginstal libxml2 dan libxslt, keduanya diinstal dengan baik tetapi saya masih tidak dapat menginstal lxml.
Terakhir kali saya menginstal, saya perlu mengaktifkan alat pengembang di Xcode tetapi sejak diperbarui ke Xcode 5 itu tidak memberi saya opsi itu lagi.
Adakah yang tahu apa yang harus saya lakukan?
pip3.4 install lxml
atauSTATIC_DEPS=true pip3.4 install lxml
perintah jika Anda menargetkan instalasi khusus untuk Python3 (beradaptasi dengan versi Anda, bash penyelesaian TAB adalah teman Anda); sehingga Anda menginstal untuk versi spesifik dari program target Anda yang menggunakan lib ini / ini. Kalau tidak mudah untuk menghabiskan 30 juta menginstal lib untuk penerjemah yang salah ;-)Jawaban:
Anda harus menginstal atau meningkatkan alat baris perintah untuk xcode. Coba ini di terminal:
sumber
Saya memecahkan masalah ini pada Yosemite dengan menginstal dan menautkan
libxml2
sertalibxslt
melalui minuman:Jika Anda telah memecahkan masalah menggunakan metode ini tetapi muncul kembali di lain waktu, Anda mungkin perlu menjalankan ini sebelum empat baris di atas:
Jika Anda mengalami kesalahan izin dengan Homebrew, terutama pada El Capitan, ini adalah dokumen yang sangat membantu . Intinya, terlepas dari versi OS X, coba jalankan:
sumber
xcode-select --install
agak menyesatkan. Saya menemukan bahwa setelah memutakhirkan dari Mavericks ke Yosemite, saya perlu menjalankanxcode-select --install
lagi untuk meningkatkan ke Alat Baris Perintah Yosemite. Ini (sebagian) memecahkan masalah yang saya hadapi, dan dalam hal apa pun tidak akan berbahaya untuk dijalankan secara berlebihan.Anda dapat memecahkan masalah Anda dengan menjalankan ini pada commandline:
Itu benar-benar membantu saya. Penjelasan tentang dokumen
sumber
Saya mencoba sebagian besar solusi di atas, tetapi tidak ada satupun yang bekerja untuk saya. Saya menjalankan Yosemite 10.10, satu-satunya solusi yang berhasil bagi saya adalah mengetikkan ini di terminal:
EDIT: Jika Anda menggunakan virtualenv, sudo di awal tidak diperlukan.
sumber
virtualenv
sudo tidak diperlukan.OSError: [Errno 1] Operation not permitted: '/usr/bin/build'
meskipun menjalankan perintah sebagai sudo. Ada ide?Ini telah mengganggu saya untuk sementara waktu. Saya tidak tahu cukup internal tentang python distutils dll, tetapi jalur yang disertakan di sini salah. Saya membuat hack jelek berikut ini untuk menahan saya sampai orang-orang python lxml dapat melakukan perbaikan yang tepat.
sumber
Menginstal secara global ... OS X 10.9.2
sumber
petunjuk instalasi di http://lxml.de/installation.html jelaskan:
sumber
Tidak ada di atas yang berfungsi untuk saya pada 10.9.2, karena kompilasi menebus kesalahan berikut:
Yang sebenarnya mengarah ke solusi terbersih (lihat detail lebih lanjut di [1]):
atau mengikuti jika menginstal secara global
[1] kesalahan dentang: argumen tidak dikenal: '-mno-fused-madd' (kegagalan instalasi paket python)
sumber
/etc/sudoers
dengansudo visudo
melestarikan variabel lingkungan.sumber
sudo
menginstal pip sementara yang lain tidak. (Saya memiliki masalah izin ketika menjalankan pip install langsung, dan harus sudo.) Saya hanya bisa berasumsi bahwa saya telah menginstal sesuatu yang berhubungan dengan python sebagai root di masa lalu, yang membuat folder (sistem) tertentu sebagai root alih-alih seperti saya sendiri.sudo
.Saya memecahkan masalah ini
Yosemite
dengan menjalankan perintah berikut:sumber
xcode-select install
untuk saya. Saya mengunduh paket libxml2 dan libxlst terbaru (diperlukan untuk lxml), tetapi sebelum menginstalnya saya pikir saya akan memeriksa apakah Yosemite sudah memiliki file-file itu di suatu tempat. Saya membuat env virtual (menggunakan virtualenvwrapper), dan kemudian saya lakukanpip install lxml
, dan lxml diinstal bebas kesalahan. Saya menguji lxml dengan mengikis beranda google, dan itu berhasil.Dengan homebrew, libxml2 disembunyikan untuk tidak mengganggu sistem libxml2, jadi pip harus sedikit dibantu untuk menemukannya.
Dengan bash:
Dengan ikan:
sumber
OSX 10.9.2
sumber
Saya mencoba semua jawaban di halaman ini, tidak ada yang bekerja untuk saya. Saya menjalankan OS X Versi 10.9.2
Tapi ini pasti berhasil .... seperti pesona:
ARCHFLAGS = -Wno-error = install-line-argumen-hard-error-in-future pip install lxml
sumber
export ARCHFLAGS="-Wno-error=unused-command-line-argument-hard-error-in-future"
atau Anda dapat menambahkan jenis arsitektur secara eksplisit seperti ini:export ARCHFLAGS="-arch x86_64 -arch i386 -Wno-error=unused-command-line-argument-hard-error-in-future"
Sayangnya
xcode-select --install
tidak berfungsi untuk saya karena saya sudah memiliki versi terbaru.Ini sangat aneh tapi saya menyelesaikan masalah dengan membuka XCode dan menerima Syarat & Ketentuan. Menjalankan
pip install lxml
kembali tidak menghasilkan kesalahan setelah.sumber
Setelah berhasil menginstal dari pip (lxml 3.6.4) saya mendapatkan kesalahan ketika mengimpor modul lxml.etree.
Saya mencari tanpa henti untuk menginstal ini sebagai syarat untuk kasar, dan mencoba semua opsi, tetapi akhirnya ini berhasil bagi saya (mac osx 10.11 python 2.7):
Versi lxml yang lebih lama tampaknya berfungsi dengan modul etree.
Pip sering dapat mengabaikan versi paket yang ditentukan, misalnya ketika Anda memiliki versi yang lebih baru dalam cache pip, dengan demikian
easy_install
. The'-2.7'
pilihan adalah untuk versi python, menghilangkan ini jika Anda menginstal untuk python 3.x.sumber
Dalam kasus saya, saya harus mematikan Kaspersky Antivirus sebelum menginstal lxml dengan:
sumber
Saya menggunakan OSX 10.9.2 dan saya mendapatkan kesalahan yang sama.
Pemasangan alat baris perintah XCode tidak membantu untuk versi OSX tertentu ini.
Saya pikir pendekatan yang lebih baik untuk memperbaikinya adalah menginstal dengan perintah berikut:
Ini mirip dengan perbaikan jdkoftinoff, tetapi tidak mengubah sistem Anda secara permanen.
sumber
Saya bertemu pertanyaan yang sama dan setelah beberapa hari bekerja saya menyelesaikan masalah ini pada OS X 10.9.4 saya, dengan Python 3.4.1.
Inilah solusi saya,
Menurut menginstal lxml dari lxml.de,
Jika Anda tidak memiliki MacPort, instal dari MacPort.org . Cukup mudah. Anda juga mungkin memerlukan kompiler, untuk menginstal alat kompilasi XCode, gunakan
xcode-select --install
Pertama saya memperbarui port saya ke versi terbaru melalui
sudo port selfupdate
,Maka saya cukup mengetik
sudo port install libxml2
dan beberapa menit kemudian Anda akan melihat libxml2 berhasil diinstal. Mungkin Anda juga perlulibxslt
menginstal lxml. Untuk menginstal libxslt, gunakan:sudo port install libxslt
.Sekarang, ketik saja
pip install lxml
, itu akan berfungsi dengan baik.sumber
sebelum kompilasi, tambahkan path yang ke xmlversion.h ke lingkungan Anda.
Tetapi pastikan path yang saya berikan memiliki file xmlversion.h yang terletak di dalam. Kemudian,
sumber
pip
tidak bekerja untuk saya. Saya membuka https://pypi.python.org/pypi/lxml/2.3 dan mengunduh file macosx .egg:https://pypi.python.org/packages/2.7/l/lxml/lxml-2.3-py2.7-macosx-10.6-intel.egg#md5=52322e4698d68800c6b6aedb0dbe5f34
Kemudian digunakan command line
easy_install
untuk menginstal.egg
file.sumber
Posting ini menautkan ke solusi yang berfungsi untuk saya Python3, lxml dan "Symbol not found: _lzma_auto_decoder" di Mac OS X 10.9
hth
sumber
Setelah banyak merobek rambut dan kertakan gigi, saya menghapus xcode dengan pip dan berlari:
easy_install lxml
Dan semuanya baik-baik saja.
sumber
Mencoba:
Atau:
Berhasil!
sumber