When I try to upgrade lxml using pip on my windows 7 machine I get the log printed below.
When I uninstall and try to install from scratch I get the same errors. Any ideas?
Downloading/unpacking lxml from https://pypi.python.org/packages/source/l/lxml/l xml-3.2.4.tar.gz#md5=cc363499060f615aca1ec8dcc04df331 Downloading lxml-3.2.4.tar.gz (3.3MB): 3.3MB downloaded Running setup.py egg_info for package lxml Building lxml version 3.2.4. Building without Cython. ERROR: Nazwa 'xslt-config' nie jest rozpoznawana jako polecenie wewnętrzne l ub zewnętrzne, program wykonywalny lub plik wsadowy.
** make sure the development packages of libxml2 and libxslt are installed *
*
Using build configuration of libxslt D:\software\Python27\lib\distutils\dist.py:267: UserWarning: Unknown distrib ution option: 'bugtrack_url' warnings.warn(msg) warning: no files found matching 'lxml.etree.c' under directory 'src\lxml' warning: no files found matching 'lxml.objectify.c' under directory 'src\lxm l' warning: no files found matching 'lxml.etree.h' under directory 'src\lxml' warning: no files found matching 'lxml.etree_api.h' under directory 'src\lxm l' warning: no files found matching 'etree_defs.h' under directory 'src\lxml' warning: no files found matching '*.txt' under directory 'src\lxml\tests' warning: no files found matching 'pubkey.asc' under directory 'doc' warning: no files found matching 'tagpython*.png' under directory 'doc' warning: no files found matching 'Makefile' under directory 'doc' Installing collected packages: lxml Found existing installation:
lxml 2.3 Uninstalling lxml: Successfully uninstalled lxml Running setup.py install for lxml Building lxml version 3.2.4. Building without Cython. ERROR: Nazwa 'xslt-config' nie jest rozpoznawana jako polecenie wewnętrzne l ub zewnętrzne, program wykonywalny lub plik wsadowy.
** make sure the development packages of libxml2 and libxslt are installed *
*
Using build configuration of libxslt building 'lxml.etree' extension D:\software\Microsoft Visual Studio 9.0\VC\BIN\cl.exe /c /nologo /Ox /MD /W3 /GS- /DNDEBUG
-Ic:\users\x\appdata\local\temp\pip_build_x\lxml\src\lxml\inc ludes -ID:\software\Python27\include -ID:\software\Python27\PC /Tcsrc\lxml\lxml. etree.c /Fobuild\temp.win32-2.7\Release\src\lxml\lxml.etree.obj lxml.etree.c c:\users\x\appdata\local\temp\pip_build_x\lxml\src\lxml\includes\etree_d efs.h(9) : fatal error C1083: Cannot open include file: 'libxml/xmlversion.h': N o such file or directory D:\software\Python27\lib\distutils\dist.py:267: UserWarning: Unknown distrib ution option: 'bugtrack_url' warnings.warn(msg) error: command '"D:\software\Microsoft Visual Studio 9.0\VC\BIN\cl.exe"' fai led with exit status 2 Complete output from command D:\software\Python27\python.exe -c "import setu ptools;file='c:\users\x\appdata\local\temp\pip_build_x\lxml\setu p.py';exec(compile(open(file).read().replace('\r\n', '\n'), file, 'exec' ))" install --record c:\users\x\appdata\local\temp\pip-pyyuss-record\install-r ecord.txt --single-version-externally-managed: Building lxml version 3.2.4.
Building without Cython.
ERROR: Nazwa 'xslt-config' nie jest rozpoznawana jako polecenie wewnętrzne lub z ewnętrzne,
program wykonywalny lub plik wsadowy.
** 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-2.7
creating build\lib.win32-2.7\lxml
copying src\lxml\builder.py -> build\lib.win32-2.7\lxml
copying src\lxml\cssselect.py -> build\lib.win32-2.7\lxml
copying src\lxml\doctestcompare.py -> build\lib.win32-2.7\lxml
copying src\lxml\ElementInclude.py -> build\lib.win32-2.7\lxml
copying src\lxml\pyclasslookup.py -> build\lib.win32-2.7\lxml
copying src\lxml\sax.py -> build\lib.win32-2.7\lxml
copying src\lxml\usedoctest.py -> build\lib.win32-2.7\lxml
copying src\lxml_elementpath.py -> build\lib.win32-2.7\lxml
copying src\lxml__init__.py -> build\lib.win32-2.7\lxml
creating build\lib.win32-2.7\lxml\includes
copying src\lxml\includes__init__.py -> build\lib.win32-2.7\lxml\includes
creating build\lib.win32-2.7\lxml\html
copying src\lxml\html\builder.py -> build\lib.win32-2.7\lxml\html
copying src\lxml\html\clean.py -> build\lib.win32-2.7\lxml\html
copying src\lxml\html\defs.py -> build\lib.win32-2.7\lxml\html
copying src\lxml\html\diff.py -> build\lib.win32-2.7\lxml\html
copying src\lxml\html\ElementSoup.py -> build\lib.win32-2.7\lxml\html
copying src\lxml\html\formfill.py -> build\lib.win32-2.7\lxml\html
copying src\lxml\html\html5parser.py -> build\lib.win32-2.7\lxml\html
copying src\lxml\html\soupparser.py -> build\lib.win32-2.7\lxml\html
copying src\lxml\html\usedoctest.py -> build\lib.win32-2.7\lxml\html
copying src\lxml\html_diffcommand.py -> build\lib.win32-2.7\lxml\html
copying src\lxml\html_html5builder.py -> build\lib.win32-2.7\lxml\html
copying src\lxml\html_setmixin.py -> build\lib.win32-2.7\lxml\html
copying src\lxml\html__init__.py -> build\lib.win32-2.7\lxml\html
creating build\lib.win32-2.7\lxml\isoschematron
copying src\lxml\isoschematron__init__.py -> build\lib.win32-2.7\lxml\isoschema tron
copying src\lxml\lxml.etree.h -> build\lib.win32-2.7\lxml
copying src\lxml\lxml.etree_api.h -> build\lib.win32-2.7\lxml
copying src\lxml\includes\c14n.pxd -> build\lib.win32-2.7\lxml\includes
copying src\lxml\includes\config.pxd -> build\lib.win32-2.7\lxml\includes
copying src\lxml\includes\dtdvalid.pxd -> build\lib.win32-2.7\lxml\includes
copying src\lxml\includes\etreepublic.pxd -> build\lib.win32-2.7\lxml\includes
copying src\lxml\includes\htmlparser.pxd -> build\lib.win32-2.7\lxml\includes
copying src\lxml\includes\relaxng.pxd -> build\lib.win32-2.7\lxml\includes
copying src\lxml\includes\schematron.pxd -> build\lib.win32-2.7\lxml\includes
copying src\lxml\includes\tree.pxd -> build\lib.win32-2.7\lxml\includes
copying src\lxml\includes\uri.pxd -> build\lib.win32-2.7\lxml\includes
copying src\lxml\includes\xinclude.pxd -> build\lib.win32-2.7\lxml\includes
copying src\lxml\includes\xmlerror.pxd -> build\lib.win32-2.7\lxml\includes
copying src\lxml\includes\xmlparser.pxd -> build\lib.win32-2.7\lxml\includes
copying src\lxml\includes\xmlschema.pxd -> build\lib.win32-2.7\lxml\includes
copying src\lxml\includes\xpath.pxd -> build\lib.win32-2.7\lxml\includes
copying src\lxml\includes\xslt.pxd -> build\lib.win32-2.7\lxml\includes
copying src\lxml\includes\etree_defs.h -> build\lib.win32-2.7\lxml\includes
copying src\lxml\includes\lxml-version.h -> build\lib.win32-2.7\lxml\includes
creating build\lib.win32-2.7\lxml\isoschematron\resources
creating build\lib.win32-2.7\lxml\isoschematron\resources\rng
copying src\lxml\isoschematron\resources\rng\iso-schematron.rng -> build\lib.win 32-2.7\lxml\isoschematron\resources\rng
creating build\lib.win32-2.7\lxml\isoschematron\resources\xsl
copying src\lxml\isoschematron\resources\xsl\RNG2Schtrn.xsl -> build\lib.win32-2 .7\lxml\isoschematron\resources\xsl
copying src\lxml\isoschematron\resources\xsl\XSD2Schtrn.xsl -> build\lib.win32-2 .7\lxml\isoschematron\resources\xsl
creating build\lib.win32-2.7\lxml\isoschematron\resources\xsl\iso-schematron-xsl t1
copying src\lxml\isoschematron\resources\xsl\iso-schematron-xslt1\iso_abstract_e xpand.xsl -> build\lib.win32-2.7\lxml\isoschematron\resources\xsl\iso-schematron -xslt1
copying src\lxml\isoschematron\resources\xsl\iso-schematron-xslt1\iso_dsdl_inclu de.xsl -> build\lib.win32-2.7\lxml\isoschematron\resources\xsl\iso-schematron-xs lt1
copying src\lxml\isoschematron\resources\xsl\iso-schematron-xslt1\iso_schematron _message.xsl -> build\lib.win32-2.7\lxml\isoschematron\resources\xsl\iso-schemat ron-xslt1
copying src\lxml\isoschematron\resources\xsl\iso-schematron-xslt1\iso_schematron _skeleton_for_xslt1.xsl -> build\lib.win32-2.7\lxml\isoschematron\resources\xsl\ iso-schematron-xslt1
copying src\lxml\isoschematron\resources\xsl\iso-schematron-xslt1\iso_svrl_for_x slt1.xsl -> build\lib.win32-2.7\lxml\isoschematron\resources\xsl\iso-schematron- xslt1
copying src\lxml\isoschematron\resources\xsl\iso-schematron-xslt1\readme.txt -> build\lib.win32-2.7\lxml\isoschematron\resources\xsl\iso-schematron-xslt1
running build_ext
building 'lxml.etree' extension
creating build\temp.win32-2.7
creating build\temp.win32-2.7\Release
creating build\temp.win32-2.7\Release\src
creating build\temp.win32-2.7\Release\src\lxml
D:\software\Microsoft Visual Studio 9.0\VC\BIN\cl.exe /c /nologo /Ox /MD /W3 /GS - /DNDEBUG -Ic:\users\x\appdata\local\temp\pip_build_x\lxml\src\lxml\include s -ID:\software\Python27\include -ID:\software\Python27\PC /Tcsrc\lxml\lxml.etre e.c /Fobuild\temp.win32-2.7\Release\src\lxml\lxml.etree.obj
lxml.etree.c
c:\users\x\appdata\local\temp\pip_build_x\lxml\src\lxml\includes\etree_defs. h(9) : fatal error C1083: Cannot open include file: 'libxml/xmlversion.h': No su ch file or directory
D:\software\Python27\lib\distutils\dist.py:267: UserWarning: Unknown distributio n option: 'bugtrack_url'
warnings.warn(msg)
error: command '"D:\software\Microsoft Visual Studio 9.0\VC\BIN\cl.exe"' failed with exit status 2
---------------------------------------- Rolling back uninstall of lxml Cleaning up... Command D:\software\Python27\python.exe -c "import setuptools;file='c:\user s\x\appdata\local\temp\pip_build_x\lxml\setup.py';exec(compile(open(_ file_).read().replace('\r\n', '\n'), file, 'exec'))" install --record c:\u sers\x\appdata\local\temp\pip-pyyuss-record\install-record.txt --single-versio n-externally-managed failed with error code 1 in c:\users\x\appdata\local\temp \pip_build_x\lxml Traceback (most recent call last): File "D:\software\Python27\Scripts\pip-script.py", line 9, in load_entry_point('pip==1.4.1', 'console_scripts', 'pip')() File "D:\software\Python27\lib\site-packages\pip__init__.py", line 148, in ma in return command.main(args[1:], options) File "D:\software\Python27\lib\site-packages\pip\basecommand.py", line 169, in main text = '\n'.join(complete_log) UnicodeDecodeError: 'ascii' codec can't decode byte 0xa9 in position 72: ordinal not in range(128)
Type “ pip install lxml ” (without quotes) in the command line and hit Enter again. This installs lxml for your default Python installation. The previous command may not work if you have both Python versions 2 and 3 on your computer. In this case, try "pip3 install lxml" or “ python -m pip install lxml “.
lxml has been downloaded from the Python Package Index millions of times and is also available directly in many package distributions, e.g. for Linux or macOS.
In case you want to use the current in-development version of lxml, you can get it from the github repository at https://github.com/lxml/lxml . Note that this requires Cython to build the sources, see the build instructions on the project home page.
If you have a compiler installed (tested with VS C++ 2008 Express), you can simply run:
set STATICBUILD=true && pip install lxml
As pointed out on documentation, setting STATICBUILD
will tell to lxml's installer to automatically download all its binary dependencies before build.
These lxml
binary dependencies, that should be present when installing from source, will be downloaded and build together by the installer:
Bonus: It also works inside a virtualenv.
This question is older but still pops up in google. I tried the other answers to this question and they did not work for one reason or another and I did't want to track down and install all the dependencies to compile on Windows.
I noticed on pypi some of the lxml releases offer windows wheels and others do not.
So the simplest solution for me was to specify a version that did... i.e. pip install lxml==3.6.0
since 3.6.0 offered a wheel while the newer 3.6.4 did not
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With