1

So I'm trying to install lxml on my machine, and I can't seem to get it to work.

I've got Windows 8.1 64-bit and python 3.5

I've used both

pip install lxml 

and

easy_install lxml 

I keep getting this error message:

C:\Users\jgarber\Downloads>pip install readability-lxml --upgrade Requirement already up-to-date: readability-lxml in c:\python\lib\site-packages\ readability_lxml-0.6.2-py3.5.egg Requirement already up-to-date: chardet in c:\python\lib\site-packages (from rea dability-lxml) Collecting lxml (from readability-lxml) Using cached lxml-3.6.4.tar.gz Requirement already up-to-date: cssselect in c:\python\lib\site-packages\csssele ct-1.0.0-py3.5.egg (from readability-lxml) Installing collected packages: lxml Running setup.py install for lxml ... error Complete output from command c:\python\python.exe -u -c "import setuptools, tokenize;__file__='C:\\Users\\jgarber\\AppData\\Local\\Temp\\pip-build-bypbiu8j\ \lxml\\setup.py';exec(compile(getattr(tokenize, 'open', open)(__file__).read().r eplace('\r\n', '\n'), __file__, 'exec'))" install --record C:\Users\jgarber\AppD ata\Local\Temp\pip-j8svsde4-record\install-record.txt --single-version-externall y-managed --compile: Building lxml version 3.6.4. Building without Cython. ERROR: b"'xslt-config' is not recognized as an internal or external command, \r\noperable program or batch file.\r\n" ** make sure the development packages of libxml2 and libxslt are installed * * Using build configuration of libxslt running install running build running build_py creating build creating build\lib.win32-3.5 creating build\lib.win32-3.5\lxml copying src\lxml\builder.py -> build\lib.win32-3.5\lxml copying src\lxml\cssselect.py -> build\lib.win32-3.5\lxml copying src\lxml\doctestcompare.py -> build\lib.win32-3.5\lxml copying src\lxml\ElementInclude.py -> build\lib.win32-3.5\lxml copying src\lxml\pyclasslookup.py -> build\lib.win32-3.5\lxml copying src\lxml\sax.py -> build\lib.win32-3.5\lxml copying src\lxml\usedoctest.py -> build\lib.win32-3.5\lxml copying src\lxml\_elementpath.py -> build\lib.win32-3.5\lxml copying src\lxml\__init__.py -> build\lib.win32-3.5\lxml creating build\lib.win32-3.5\lxml\includes copying src\lxml\includes\__init__.py -> build\lib.win32-3.5\lxml\includes creating build\lib.win32-3.5\lxml\html copying src\lxml\html\builder.py -> build\lib.win32-3.5\lxml\html copying src\lxml\html\clean.py -> build\lib.win32-3.5\lxml\html copying src\lxml\html\defs.py -> build\lib.win32-3.5\lxml\html copying src\lxml\html\diff.py -> build\lib.win32-3.5\lxml\html copying src\lxml\html\ElementSoup.py -> build\lib.win32-3.5\lxml\html copying src\lxml\html\formfill.py -> build\lib.win32-3.5\lxml\html copying src\lxml\html\html5parser.py -> build\lib.win32-3.5\lxml\html copying src\lxml\html\soupparser.py -> build\lib.win32-3.5\lxml\html copying src\lxml\html\usedoctest.py -> build\lib.win32-3.5\lxml\html copying src\lxml\html\_diffcommand.py -> build\lib.win32-3.5\lxml\html copying src\lxml\html\_html5builder.py -> build\lib.win32-3.5\lxml\html copying src\lxml\html\_setmixin.py -> build\lib.win32-3.5\lxml\html copying src\lxml\html\__init__.py -> build\lib.win32-3.5\lxml\html creating build\lib.win32-3.5\lxml\isoschematron copying src\lxml\isoschematron\__init__.py -> build\lib.win32-3.5\lxml\isosc hematron copying src\lxml\lxml.etree.h -> build\lib.win32-3.5\lxml copying src\lxml\lxml.etree_api.h -> build\lib.win32-3.5\lxml copying src\lxml\includes\c14n.pxd -> build\lib.win32-3.5\lxml\includes copying src\lxml\includes\config.pxd -> build\lib.win32-3.5\lxml\includes copying src\lxml\includes\dtdvalid.pxd -> build\lib.win32-3.5\lxml\includes copying src\lxml\includes\etreepublic.pxd -> build\lib.win32-3.5\lxml\includ es copying src\lxml\includes\htmlparser.pxd -> build\lib.win32-3.5\lxml\include s copying src\lxml\includes\relaxng.pxd -> build\lib.win32-3.5\lxml\includes copying src\lxml\includes\schematron.pxd -> build\lib.win32-3.5\lxml\include s copying src\lxml\includes\tree.pxd -> build\lib.win32-3.5\lxml\includes copying src\lxml\includes\uri.pxd -> build\lib.win32-3.5\lxml\includes copying src\lxml\includes\xinclude.pxd -> build\lib.win32-3.5\lxml\includes copying src\lxml\includes\xmlerror.pxd -> build\lib.win32-3.5\lxml\includes copying src\lxml\includes\xmlparser.pxd -> build\lib.win32-3.5\lxml\includes copying src\lxml\includes\xmlschema.pxd -> build\lib.win32-3.5\lxml\includes copying src\lxml\includes\xpath.pxd -> build\lib.win32-3.5\lxml\includes copying src\lxml\includes\xslt.pxd -> build\lib.win32-3.5\lxml\includes copying src\lxml\includes\etree_defs.h -> build\lib.win32-3.5\lxml\includes copying src\lxml\includes\lxml-version.h -> build\lib.win32-3.5\lxml\include s creating build\lib.win32-3.5\lxml\isoschematron\resources creating build\lib.win32-3.5\lxml\isoschematron\resources\rng copying src\lxml\isoschematron\resources\rng\iso-schematron.rng -> build\lib .win32-3.5\lxml\isoschematron\resources\rng creating build\lib.win32-3.5\lxml\isoschematron\resources\xsl copying src\lxml\isoschematron\resources\xsl\RNG2Schtrn.xsl -> build\lib.win 32-3.5\lxml\isoschematron\resources\xsl copying src\lxml\isoschematron\resources\xsl\XSD2Schtrn.xsl -> build\lib.win 32-3.5\lxml\isoschematron\resources\xsl creating build\lib.win32-3.5\lxml\isoschematron\resources\xsl\iso-schematron -xslt1 copying src\lxml\isoschematron\resources\xsl\iso-schematron-xslt1\iso_abstra ct_expand.xsl -> build\lib.win32-3.5\lxml\isoschematron\resources\xsl\iso-schema tron-xslt1 copying src\lxml\isoschematron\resources\xsl\iso-schematron-xslt1\iso_dsdl_i nclude.xsl -> build\lib.win32-3.5\lxml\isoschematron\resources\xsl\iso-schematro n-xslt1 copying src\lxml\isoschematron\resources\xsl\iso-schematron-xslt1\iso_schema tron_message.xsl -> build\lib.win32-3.5\lxml\isoschematron\resources\xsl\iso-sch ematron-xslt1 copying src\lxml\isoschematron\resources\xsl\iso-schematron-xslt1\iso_schema tron_skeleton_for_xslt1.xsl -> build\lib.win32-3.5\lxml\isoschematron\resources\ xsl\iso-schematron-xslt1 copying src\lxml\isoschematron\resources\xsl\iso-schematron-xslt1\iso_svrl_f or_xslt1.xsl -> build\lib.win32-3.5\lxml\isoschematron\resources\xsl\iso-schemat ron-xslt1 copying src\lxml\isoschematron\resources\xsl\iso-schematron-xslt1\readme.txt -> build\lib.win32-3.5\lxml\isoschematron\resources\xsl\iso-schematron-xslt1 running build_ext building 'lxml.etree' extension creating build\temp.win32-3.5 creating build\temp.win32-3.5\Release creating build\temp.win32-3.5\Release\src creating build\temp.win32-3.5\Release\src\lxml C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\BIN\cl.exe /c /nologo /Ox /W3 /GL /DNDEBUG /MD -Isrc\lxml\includes -Ic:\python\include -Ic:\python\in clude "-IC:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\INCLUDE" "-IC:\P rogram Files (x86)\Windows Kits\10\include\10.0.10240.0\ucrt" "-IC:\Program File s (x86)\Windows Kits\8.1\include\shared" "-IC:\Program Files (x86)\Windows Kits\ 8.1\include\um" "-IC:\Program Files (x86)\Windows Kits\8.1\include\winrt" /Tcsrc \lxml\lxml.etree.c /Fobuild\temp.win32-3.5\Release\src\lxml\lxml.etree.obj -w cl : Command line warning D9025 : overriding '/W3' with '/w' lxml.etree.c src\lxml\includes\etree_defs.h(14): fatal error C1083: Cannot open include f ile: 'libxml/xmlversion.h': No such file or directory Compile failed: command 'C:\\Program Files (x86)\\Microsoft Visual Studio 14 .0\\VC\\BIN\\cl.exe' failed with exit status 2 creating Users creating Users\jgarber creating Users\jgarber\AppData creating Users\jgarber\AppData\Local creating Users\jgarber\AppData\Local\Temp C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\BIN\cl.exe /c /nologo /Ox /W3 /GL /DNDEBUG /MD -I/usr/include/libxml2 "-IC:\Program Files (x86)\Micro soft Visual Studio 14.0\VC\INCLUDE" "-IC:\Program Files (x86)\Windows Kits\10\in clude\10.0.10240.0\ucrt" "-IC:\Program Files (x86)\Windows Kits\8.1\include\shar ed" "-IC:\Program Files (x86)\Windows Kits\8.1\include\um" "-IC:\Program Files ( x86)\Windows Kits\8.1\include\winrt" /TcC:\Users\jgarber\AppData\Local\Temp\xmlX PathInit_qrahzea.c /FoUsers\jgarber\AppData\Local\Temp\xmlXPathInit_qrahzea.obj xmlXPathInit_qrahzea.c C:\Users\jgarber\AppData\Local\Temp\xmlXPathInit_qrahzea.c(1): fatal error C 1083: Cannot open include file: 'libxml/xpath.h': No such file or directory **************************************************************************** ***** Could not find function xmlCheckVersion in library libxml2. Is libxml2 insta lled? **************************************************************************** ***** error: command 'C:\\Program Files (x86)\\Microsoft Visual Studio 14.0\\VC\\B IN\\cl.exe' failed with exit status 2 ---------------------------------------- Command "c:\python\python.exe -u -c "import setuptools, tokenize;__file__='C:\\U sers\\jgarber\\AppData\\Local\\Temp\\pip-build-bypbiu8j\\lxml\\setup.py';exec(co mpile(getattr(tokenize, 'open', open)(__file__).read().replace('\r\n', '\n'), __ file__, 'exec'))" install --record C:\Users\jgarber\AppData\Local\Temp\pip-j8svs de4-record\install-record.txt --single-version-externally-managed --compile" fai led with error code 1 in C:\Users\jgarber\AppData\Local\Temp\pip-build-bypbiu8j\ lxml\ 

I have also tried downloading the .whl from http://www.lfd.uci.edu/~gohlke/pythonlibs/#lxml and attempted to manually install the wheel but receive this error message:

C:\Users\jgarber\Downloads>pip install lxml-3.6.4-cp35-cp35m-win_amd64.whl lxml-3.6.4-cp35-cp35m-win_amd64.whl is not a supported wheel on this platform. 

even with the python -m pip install statement.

At this point I'm not sure what I'm missing, any help would be greatly appreciated.

6
  • 1
    I would try using the unofficial binaries that the LXML site recommends. These binaries include libxml so you don't have to install it yourself (which is currently the problem). Commented Nov 2, 2016 at 18:42
  • @Aurora0001 I've already tried that and it tells me that the .whl is not a supported wheel on my platform. I have it stated at the bottom of the post. Commented Nov 2, 2016 at 18:47
  • 1
    Did you try the 32-bit version? I think Python installs as 32-bit by default on Windows. Commented Nov 2, 2016 at 18:54
  • 1
    @Aurora0001 yup the 32-bit version worked. I was pretty sure I had set this environment up with the 64-bit version of Python and all, but oh well. Thanks! that solved my problem! Commented Nov 2, 2016 at 18:59
  • Glad it helped. Would you like me to post this as an answer then? Commented Nov 2, 2016 at 19:00

2 Answers 2

2

By default, Python will install as 32-bit on Windows, even on 64-bit systems. Therefore, to match this, you must select the wheel for 32-bit systems.

You can verify that your Python interpreter is 32-bit, because the REPL will look like this when starting:

Python 3.5.2 (v3.5.2:4def2a2901a5, Jun 25 2016, 22:01:18) [MSC v.1900 32 bit (Intel)] on win32 

You should pick the lxml-3.6.4-cp35-cp35m-win32.whl package for Python 3.5 on Windows (unless you explicitly selected 64-bit when downloading Python) which should solve your issue.

Sign up to request clarification or add additional context in comments.

Comments

2

They fixed this issue as of lxml version 4.2.5.

If you are still getting this issue, see if your requirements file specifies a specific version of lxml. If so, you should be able to fix the problem by updating the specified version to 4.2.5 or above.

1 Comment

Thanks! when I set up new environments I'll keep this in mind!!

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.