Получение "Не удалось найти функцию xmlCheckVersion в библиотеке libxml2. Установлен ли libxml2?" при установке lxml через pip
При попытке установить lxml через pip я получаю сообщение об ошибке Could not find function xmlCheckVersion in library libxml2. Is libxml2 installed?
.
c:\users\f\appdata\local\temp\xmlXPathInitqjzysz.c(1) : fatal error C1083: Cannot open include file: 'libxml/xpath.h': No such file or directory
*********************************************************************************
Could not find function xmlCheckVersion in library libxml2. Is libxml2 installed?
*********************************************************************************
error: command 'C:\\Users\\f\\AppData\\Local\\Programs\\Common\\Microsoft\\Visual C++ for Python\\9.0\\VC\\Bin\\cl.exe' failed with exit status 2
Я не могу найти пакеты libxml2 dev для установки через pip.
Использование Python 2.7.10 на x86 в virtualenv под Windows 10.
Ответы
Ответ 1
Установите lxml из http://www.lfd.uci.edu/~gohlke/pythonlibs/#lxml для вашей версии python. Это предварительно скомпилированный WHL с необходимыми модулями/зависимостями.
На сайте перечислены несколько пакетов, например, используя Win32 Python 2.7, используйте lxml-3.6.1-cp27-cp27m-win32.whl
.
Загрузите файл, а затем установите с помощью
pip install C:\path\to\downloaded\file\lxml-3.6.1-cp27-cp27m-win32.whl
Ответ 2
У меня была эта проблема и я понял, что, хотя у меня уже установлен libxml2, у меня не было необходимых библиотек разработки, необходимых для пакета python. Их установка решила проблему:
sudo apt-get install libxml2-dev libxslt1-dev
sudo pip install lxml
Ответ 3
Попробуйте использовать:
easy_install lxml
Это работает для меня, win10, python 2.7.
Ответ 4
В Mac OS X El Capitan мне пришлось запустить эти две команды, чтобы исправить эту ошибку:
xcode-select --install
pip install lxml
Который закончил установку lxml-3.5.0
Когда вы запустите команду xcode-select, вам может потребоваться подписать EULA (так что X-Term будет удобен для пользовательского интерфейса, если вы делаете это на безголовой машине).
Ответ 5
Если у кого-то еще такая же проблема, как на
Centos, попробуйте:
yum install python-lxml
Ubuntu
sudo apt-get install -y python-lxml
работал у меня.
Ответ 6
set STATICBUILD=true && pip install lxml
вместо этого запустите эту команду, сначала должен быть установлен компилятор VS C++
https://blogs.msdn.microsoft.com/pythonengineering/2016/04/11/unable-to-find-vcvarsall-bat/
Это работает для меня с Python 3.5.2 и Windows 7
Ответ 7
Я попытался установить lib, который зависит от lxml
и ничего не работает. Когда начинается сборка, появляется сообщение: "Сборка без Cython", поэтому после установки cython
с помощью apt-get install cython
lxml
был установлен lxml
.
Ответ 8
для пользователей Windows перейдите на https://www.zlatkovic.com/pub/libxml/ загрузите файл libxml2
распакуйте его
Файлы в этом пакете не требуют каких-либо специальных шагов установки. Извлеките содержимое архива, где хотите, и убедитесь, что ваши инструменты, использующие libxml2, могут его найти.
Ответ 9
Для меня не странно, что ни одно из вышеперечисленных решений не подошло, но я видел, как установка igd удалила новую версию и установила старую, для решения я скачал этот архив: https://pypi.org/project/ИГД/# файлы
и изменил рекомендуемую версию новой версии: 'lxml == 4.3.0' в setup.py Это работает!