I excitedly installed Python v3.4 this afternoon as it now comes with PIP pre-packaged in it but typing pip install matplotlib
yielded a rather disappointing response:
C:\Users\jonc>pip install matplotlib
Downloading/unpacking matplotlib
Running setup.py (path:C:\Users\jonc\AppData\Local\Temp\pip_build_Jonc\matplotlib\setup.py) egg_info for package matpl
otlib
============================================================================
Edit setup.cfg to change the build options
BUILDING MATPLOTLIB
matplotlib: yes [1.3.1]
python: yes [3.4.0 (v3.4.0:04f714765c13, Mar 16 2014,
19:25:23) [MSC v.1600 64 bit (AMD64)]]
platform: yes [win32]
REQUIRED DEPENDENCIES AND EXTENSIONS
numpy: yes [not found. pip may install it below.]
dateutil: yes [dateutil was not found. It is required for date
axis support. pip/easy_install may attempt to
install it after matplotlib.]
tornado: yes [tornado was not found. It is required for the
WebAgg backend. pip/easy_install may attempt to
install it after matplotlib.]
pyparsing: yes [pyparsing was not found. It is required for
mathtext support. pip/easy_install may attempt to
install it after matplotlib.]
pycxx: yes [Official versions of PyCXX are not compatible
with Python 3.x. Using local copy]
libagg: yes [pkg-config information for 'libagg' could not
be found. Using local copy.]
freetype: yes [Unknown version]
png: yes [pkg-config information for 'libpng' could not
be found. Using unknown version.]
OPTIONAL SUBPACKAGES
sample_data: yes [installing]
toolkits: yes [installing]
tests: yes [nose 0.11.1 or later is required to run the
matplotlib test suite]
OPTIONAL BACKEND EXTENSIONS
macosx: no [Mac OS-X only]
qt4agg: no [PyQt4 not found]
gtk3agg: no [gtk3agg backend does not work on Python 3]
gtk3cairo: no [Requires cairo to be installed.]
gtkagg: no [Requires pygtk]
tkagg: no [The C/C++ header for Tk (tk.h) could not be
found. You may need to install the development
package.]
wxagg: no [requires wxPython]
gtk: no [Requires pygtk]
agg: yes [installing]
cairo: no [cairo not found]
windowing: yes [installing, installing]
OPTIONAL LATEX DEPENDENCIES
dvipng: no
ghostscript: no
latex: no
pdftops: no
non-existing path in 'numpy\\distutils': 'site.cfg'
non-existing path in 'numpy\\lib': 'benchmarks'
Running from numpy source directory.
C:\Users\jonc\AppData\Local\Temp\easy_install-jzy7ozif\numpy-1.8.1\numpy\distutils\system_info.py:1521: UserWarning:
Atlas (http://math-atlas.sourceforge.net/) libraries not found.
Directories to search for the libraries can be specified in the
numpy/distutils/site.cfg file (section [atlas]) or by setting
the ATLAS environment variable.
warnings.warn(AtlasNotFoundError.__doc__)
C:\Users\jonc\AppData\Local\Temp\easy_install-jzy7ozif\numpy-1.8.1\numpy\distutils\system_info.py:1530: UserWarning:
Blas (http://www.netlib.org/blas/) libraries not found.
Directories to search for the libraries can be specified in the
numpy/distutils/site.cfg file (section [blas]) or by setting
the BLAS environment variable.
warnings.warn(BlasNotFoundError.__doc__)
C:\Users\jonc\AppData\Local\Temp\easy_install-jzy7ozif\numpy-1.8.1\numpy\distutils\system_info.py:1533: UserWarning:
Blas (http://www.netlib.org/blas/) sources not found.
Directories to search for the sources can be specified in the
numpy/distutils/site.cfg file (section [blas_src]) or by setting
the BLAS_SRC environment variable.
warnings.warn(BlasSrcNotFoundError.__doc__)
C:\Users\jonc\AppData\Local\Temp\easy_install-jzy7ozif\numpy-1.8.1\numpy\distutils\system_info.py:1427: UserWarning:
Atlas (http://math-atlas.sourceforge.net/) libraries not found.
Directories to search for the libraries can be specified in the
numpy/distutils/site.cfg file (section [atlas]) or by setting
the ATLAS environment variable.
warnings.warn(AtlasNotFoundError.__doc__)
C:\Users\jonc\AppData\Local\Temp\easy_install-jzy7ozif\numpy-1.8.1\numpy\distutils\system_info.py:1438: UserWarning:
Lapack (http://www.netlib.org/lapack/) libraries not found.
Directories to search for the libraries can be specified in the
numpy/distutils/site.cfg file (section [lapack]) or by setting
the LAPACK environment variable.
warnings.warn(LapackNotFoundError.__doc__)
C:\Users\jonc\AppData\Local\Temp\easy_install-jzy7ozif\numpy-1.8.1\numpy\distutils\system_info.py:1441: UserWarning:
Lapack (http://www.netlib.org/lapack/) sources not found.
Directories to search for the sources can be specified in the
numpy/distutils/site.cfg file (section [lapack_src]) or by setting
the LAPACK_SRC environment variable.
warnings.warn(LapackSrcNotFoundError.__doc__)
C:\Python34\lib\distutils\dist.py:260: UserWarning: Unknown distribution option: 'define_macros'
warnings.warn(msg)
Traceback (most recent call last):
File "<string>", line 17, in <module>
File "C:\Users\jonc\AppData\Local\Temp\pip_build_Jonc\matplotlib\setup.py", line 268, in <module>
**extra_args
File "C:\Python34\lib\distutils\core.py", line 109, in setup
_setup_distribution = dist = klass(attrs)
File "C:\Python34\lib\site-packages\setuptools\dist.py", line 239, in __init__
self.fetch_build_eggs(attrs.pop('setup_requires'))
File "C:\Python34\lib\site-packages\setuptools\dist.py", line 263, in fetch_build_eggs
parse_requirements(requires), installer=self.fetch_build_egg
File "C:\Python34\lib\site-packages\pkg_resources.py", line 564, in resolve
dist = best[req.key] = env.best_match(req, self, installer)
File "C:\Python34\lib\site-packages\pkg_resources.py", line 802, in best_match
return self.obtain(req, installer) # try and download/install
File "C:\Python34\lib\site-packages\pkg_resources.py", line 814, in obtain
return installer(requirement)
File "C:\Python34\lib\site-packages\setuptools\dist.py", line 313, in fetch_build_egg
return cmd.easy_install(req)
File "C:\Python34\lib\site-packages\setuptools\command\easy_install.py", line 593, in easy_install
return self.install_item(spec, dist.location, tmpdir, deps)
File "C:\Python34\lib\site-packages\setuptools\command\easy_install.py", line 623, in install_item
dists = self.install_eggs(spec, download, tmpdir)
File "C:\Python34\lib\site-packages\setuptools\command\easy_install.py", line 809, in install_eggs
return self.build_and_install(setup_script, setup_base)
File "C:\Python34\lib\site-packages\setuptools\command\easy_install.py", line 1015, in build_and_install
self.run_setup(setup_script, setup_base, args)
File "C:\Python34\lib\site-packages\setuptools\command\easy_install.py", line 1000, in run_setup
run_setup(setup_script, args)
File "C:\Python34\lib\site-packages\setuptools\sandbox.py", line 50, in run_setup
lambda: execfile(
File "C:\Python34\lib\site-packages\setuptools\sandbox.py", line 100, in run
return func()
File "C:\Python34\lib\site-packages\setuptools\sandbox.py", line 52, in <lambda>
{'__file__':setup_script, '__name__':'__main__'}
File "C:\Python34\lib\site-packages\setuptools\compat.py", line 78, in execfile
exec(compile(source, fn, 'exec'), globs, locs)
File "setup.py", line 239, in <module>
author_email="mdroe@stsci.edu",
File "setup.py", line 231, in setup_package
setup_requires = []
File "C:\Users\jonc\AppData\Local\Temp\easy_install-jzy7ozif\numpy-1.8.1\numpy\distutils\core.py", line 169, in se
tup
File "C:\Python34\lib\distutils\core.py", line 149, in setup
dist.run_commands()
File "C:\Python34\lib\distutils\dist.py", line 955, in run_commands
self.run_command(cmd)
File "C:\Python34\lib\distutils\dist.py", line 974, in run_command
cmd_obj.run()
File "C:\Python34\lib\site-packages\setuptools\command\bdist_egg.py", line 177, in run
self.run_command("egg_info")
File "C:\Python34\lib\distutils\cmd.py", line 313, in run_command
self.distribution.run_command(command)
File "C:\Python34\lib\distutils\dist.py", line 974, in run_command
cmd_obj.run()
File "C:\Users\jonc\AppData\Local\Temp\easy_install-jzy7ozif\numpy-1.8.1\numpy\distutils\command\egg_info.py", lin
e 10, in run
File "C:\Python34\lib\distutils\cmd.py", line 313, in run_command
self.distribution.run_command(command)
File "C:\Python34\lib\distutils\dist.py", line 974, in run_command
cmd_obj.run()
File "C:\Users\jonc\AppData\Local\Temp\easy_install-jzy7ozif\numpy-1.8.1\numpy\distutils\command\build_src.py", li
ne 153, in run
File "C:\Users\jonc\AppData\Local\Temp\easy_install-jzy7ozif\numpy-1.8.1\numpy\distutils\command\build_src.py", li
ne 164, in build_sources
File "C:\Users\jonc\AppData\Local\Temp\easy_install-jzy7ozif\numpy-1.8.1\numpy\distutils\command\build_src.py", li
ne 299, in build_library_sources
File "C:\Users\jonc\AppData\Local\Temp\easy_install-jzy7ozif\numpy-1.8.1\numpy\distutils\command\build_src.py", li
ne 386, in generate_sources
File "numpy\core\setup.py", line 680, in get_mathlib_info
File "C:\Python34\lib\distutils\command\config.py", line 243, in try_link
self._check_compiler()
File "C:\Users\jonc\AppData\Local\Temp\easy_install-jzy7ozif\numpy-1.8.1\numpy\distutils\command\config.py", line
57, in _check_compiler
File "C:\Python34\lib\distutils\msvc9compiler.py", line 371, in initialize
vc_env = query_vcvarsall(VERSION, plat_spec)
File "C:\Python34\lib\distutils\msvc9compiler.py", line 287, in query_vcvarsall
raise ValueError(str(list(result.keys())))
ValueError: ['path']
Complete output from command python setup.py egg_info:
============================================================================
Edit setup.cfg to change the build options
BUILDING MATPLOTLIB
matplotlib: yes [1.3.1]
python: yes [3.4.0 (v3.4.0:04f714765c13, Mar 16 2014,
19:25:23) [MSC v.1600 64 bit (AMD64)]]
platform: yes [win32]
REQUIRED DEPENDENCIES AND EXTENSIONS
numpy: yes [not found. pip may install it below.]
dateutil: yes [dateutil was not found. It is required for date
axis support. pip/easy_install may attempt to
install it after matplotlib.]
tornado: yes [tornado was not found. It is required for the
WebAgg backend. pip/easy_install may attempt to
install it after matplotlib.]
pyparsing: yes [pyparsing was not found. It is required for
mathtext support. pip/easy_install may attempt to
install it after matplotlib.]
pycxx: yes [Official versions of PyCXX are not compatible
with Python 3.x. Using local copy]
libagg: yes [pkg-config information for 'libagg' could not
be found. Using local copy.]
freetype: yes [Unknown version]
png: yes [pkg-config information for 'libpng' could not
be found. Using unknown version.]
OPTIONAL SUBPACKAGES
sample_data: yes [installing]
toolkits: yes [installing]
tests: yes [nose 0.11.1 or later is required to run the
matplotlib test suite]
OPTIONAL BACKEND EXTENSIONS
macosx: no [Mac OS-X only]
qt4agg: no [PyQt4 not found]
gtk3agg: no [gtk3agg backend does not work on Python 3]
gtk3cairo: no [Requires cairo to be installed.]
gtkagg: no [Requires pygtk]
tkagg: no [The C/C++ header for Tk (tk.h) could not be
found. You may need to install the development
package.]
wxagg: no [requires wxPython]
gtk: no [Requires pygtk]
agg: yes [installing]
cairo: no [cairo not found]
windowing: yes [installing, installing]
OPTIONAL LATEX DEPENDENCIES
dvipng: no
ghostscript: no
latex: no
pdftops: no
non-existing path in 'numpy\\distutils': 'site.cfg'
non-existing path in 'numpy\\lib': 'benchmarks'
Running from numpy source directory.
C:\Users\jonc\AppData\Local\Temp\easy_install-jzy7ozif\numpy-1.8.1\numpy\distutils\system_info.py:1521: UserWarning:
Atlas (http://math-atlas.sourceforge.net/) libraries not found.
Directories to search for the libraries can be specified in the
numpy/distutils/site.cfg file (section [atlas]) or by setting
the ATLAS environment variable.
warnings.warn(AtlasNotFoundError.__doc__)
C:\Users\jonc\AppData\Local\Temp\easy_install-jzy7ozif\numpy-1.8.1\numpy\distutils\system_info.py:1530: UserWarning:
Blas (http://www.netlib.org/blas/) libraries not found.
Directories to search for the libraries can be specified in the
numpy/distutils/site.cfg file (section [blas]) or by setting
the BLAS environment variable.
warnings.warn(BlasNotFoundError.__doc__)
C:\Users\jonc\AppData\Local\Temp\easy_install-jzy7ozif\numpy-1.8.1\numpy\distutils\system_info.py:1533: UserWarning:
Blas (http://www.netlib.org/blas/) sources not found.
Directories to search for the sources can be specified in the
numpy/distutils/site.cfg file (section [blas_src]) or by setting
the BLAS_SRC environment variable.
warnings.warn(BlasSrcNotFoundError.__doc__)
C:\Users\jonc\AppData\Local\Temp\easy_install-jzy7ozif\numpy-1.8.1\numpy\distutils\system_info.py:1427: UserWarning:
Atlas (http://math-atlas.sourceforge.net/) libraries not found.
Directories to search for the libraries can be specified in the
numpy/distutils/site.cfg file (section [atlas]) or by setting
the ATLAS environment variable.
warnings.warn(AtlasNotFoundError.__doc__)
C:\Users\jonc\AppData\Local\Temp\easy_install-jzy7ozif\numpy-1.8.1\numpy\distutils\system_info.py:1438: UserWarning:
Lapack (http://www.netlib.org/lapack/) libraries not found.
Directories to search for the libraries can be specified in the
numpy/distutils/site.cfg file (section [lapack]) or by setting
the LAPACK environment variable.
warnings.warn(LapackNotFoundError.__doc__)
C:\Users\jonc\AppData\Local\Temp\easy_install-jzy7ozif\numpy-1.8.1\numpy\distutils\system_info.py:1441: UserWarning:
Lapack (http://www.netlib.org/lapack/) sources not found.
Directories to search for the sources can be specified in the
numpy/distutils/site.cfg file (section [lapack_src]) or by setting
the LAPACK_SRC environment variable.
warnings.warn(LapackSrcNotFoundError.__doc__)
C:\Python34\lib\distutils\dist.py:260: UserWarning: Unknown distribution option: 'define_macros'
warnings.warn(msg)
Traceback (most recent call last):
File "<string>", line 17, in <module>
File "C:\Users\jonc\AppData\Local\Temp\pip_build_Jonc\matplotlib\setup.py", line 268, in <module>
**extra_args
File "C:\Python34\lib\distutils\core.py", line 109, in setup
_setup_distribution = dist = klass(attrs)
File "C:\Python34\lib\site-packages\setuptools\dist.py", line 239, in __init__
self.fetch_build_eggs(attrs.pop('setup_requires'))
File "C:\Python34\lib\site-packages\setuptools\dist.py", line 263, in fetch_build_eggs
parse_requirements(requires), installer=self.fetch_build_egg
File "C:\Python34\lib\site-packages\pkg_resources.py", line 564, in resolve
dist = best[req.key] = env.best_match(req, self, installer)
File "C:\Python34\lib\site-packages\pkg_resources.py", line 802, in best_match
return self.obtain(req, installer) # try and download/install
File "C:\Python34\lib\site-packages\pkg_resources.py", line 814, in obtain
return installer(requirement)
File "C:\Python34\lib\site-packages\setuptools\dist.py", line 313, in fetch_build_egg
return cmd.easy_install(req)
File "C:\Python34\lib\site-packages\setuptools\command\easy_install.py", line 593, in easy_install
return self.install_item(spec, dist.location, tmpdir, deps)
File "C:\Python34\lib\site-packages\setuptools\command\easy_install.py", line 623, in install_item
dists = self.install_eggs(spec, download, tmpdir)
File "C:\Python34\lib\site-packages\setuptools\command\easy_install.py", line 809, in install_eggs
return self.build_and_install(setup_script, setup_base)
File "C:\Python34\lib\site-packages\setuptools\command\easy_install.py", line 1015, in build_and_install
self.run_setup(setup_script, setup_base, args)
File "C:\Python34\lib\site-packages\setuptools\command\easy_install.py", line 1000, in run_setup
run_setup(setup_script, args)
File "C:\Python34\lib\site-packages\setuptools\sandbox.py", line 50, in run_setup
lambda: execfile(
File "C:\Python34\lib\site-packages\setuptools\sandbox.py", line 100, in run
return func()
File "C:\Python34\lib\site-packages\setuptools\sandbox.py", line 52, in <lambda>
{'__file__':setup_script, '__name__':'__main__'}
File "C:\Python34\lib\site-packages\setuptools\compat.py", line 78, in execfile
exec(compile(source, fn, 'exec'), globs, locs)
File "setup.py", line 239, in <module>
author_email="mdroe@stsci.edu",
File "setup.py", line 231, in setup_package
setup_requires = []
File "C:\Users\jonc\AppData\Local\Temp\easy_install-jzy7ozif\numpy-1.8.1\numpy\distutils\core.py", line 169, in setup
File "C:\Python34\lib\distutils\core.py", line 149, in setup
dist.run_commands()
File "C:\Python34\lib\distutils\dist.py", line 955, in run_commands
self.run_command(cmd)
File "C:\Python34\lib\distutils\dist.py", line 974, in run_command
cmd_obj.run()
File "C:\Python34\lib\site-packages\setuptools\command\bdist_egg.py", line 177, in run
self.run_command("egg_info")
File "C:\Python34\lib\distutils\cmd.py", line 313, in run_command
self.distribution.run_command(command)
File "C:\Python34\lib\distutils\dist.py", line 974, in run_command
cmd_obj.run()
File "C:\Users\jonc\AppData\Local\Temp\easy_install-jzy7ozif\numpy-1.8.1\numpy\distutils\command\egg_info.py", line 10
, in run
File "C:\Python34\lib\distutils\cmd.py", line 313, in run_command
self.distribution.run_command(command)
File "C:\Python34\lib\distutils\dist.py", line 974, in run_command
cmd_obj.run()
File "C:\Users\jonc\AppData\Local\Temp\easy_install-jzy7ozif\numpy-1.8.1\numpy\distutils\command\build_src.py", line 1
53, in run
File "C:\Users\jonc\AppData\Local\Temp\easy_install-jzy7ozif\numpy-1.8.1\numpy\distutils\command\build_src.py", line 1
64, in build_sources
File "C:\Users\jonc\AppData\Local\Temp\easy_install-jzy7ozif\numpy-1.8.1\numpy\distutils\command\build_src.py", line 2
99, in build_library_sources
File "C:\Users\jonc\AppData\Local\Temp\easy_install-jzy7ozif\numpy-1.8.1\numpy\distutils\command\build_src.py", line 3
86, in generate_sources
File "numpy\core\setup.py", line 680, in get_mathlib_info
File "C:\Python34\lib\distutils\command\config.py", line 243, in try_link
self._check_compiler()
File "C:\Users\jonc\AppData\Local\Temp\easy_install-jzy7ozif\numpy-1.8.1\numpy\distutils\command\config.py", line 57,
in _check_compiler
File "C:\Python34\lib\distutils\msvc9compiler.py", line 371, in initialize
vc_env = query_vcvarsall(VERSION, plat_spec)
File "C:\Python34\lib\distutils\msvc9compiler.py", line 287, in query_vcvarsall
raise ValueError(str(list(result.keys())))
ValueError: ['path']
----------------------------------------
Cleaning up...
Command python setup.py egg_info failed with error code 1 in C:\Users\jonc\AppData\Local\Temp\pip_build_Jonc\matplotlib
Storing debug log for failure in C:\Users\jonc\pip\pip.log
There's some mention in the matplotlib docs on installing under windows that indicates numpy might need to be installed first but that also appears to fail:
C:\Users\jonc>pip install numpy
...skip a bit...
----------------------------------------
Cleaning up...
Command C:\Python34\python.exe -c "import setuptools, tokenize;__file__='C:\\Users\\jonc\\AppData\\Local\\Temp\\pip_buil
d_Jonc\\numpy\\setup.py';exec(compile(getattr(tokenize, 'open', open)(__file__).read().replace('\r\n', '\n'), __file__,
'exec'))" install --record C:\Users\jonc\AppData\Local\Temp\pip-mjhk9pan-record\install-record.txt --single-version-exte
rnally-managed --compile failed with error code 1 in C:\Users\jonc\AppData\Local\Temp\pip_build_Jonc\numpy
Storing debug log for failure in C:\Users\jonc\pip\pip.log
What am I missing here? My Python's pretty rusty but I was under the impression pip installed dependencies itself?
I was hoping we were over the nightmare that used to be trying to install Python under Windows but it would seem not...