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)
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.