Почему установка matplotlib для Python v3.4 завершается с ошибкой в ​​Windows 7 (x64)?

Я взволнованно установил Python v3.4 сегодня днем, поскольку теперь он поставляется с PIP, предварительно упакованным в него, но набрав pip install matplotlib дал довольно pip install matplotlib ответ:

 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 

Некоторые упоминания в документах matplotlib по установке под окнами, которые означают, что numpy, возможно, потребуется установить сначала, но это также похоже на ошибку:

 C:\Users\jonc>pip install numpy 

… пропустите немного …

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

Что мне здесь не хватает? Мой Python довольно ржавый, но я был под кликом, который сам устанавливал зависимости.

Я надеялся, что мы закончили кошмар, который раньше пытался установить Python под Windows, но, похоже, не …

Для установки matplotlib из источников (т. Е. С помощью pip) необходимо иметь рабочий компилятор C (желательно gcc). У вас, похоже, нет этого в вашем окне Windows. Вероятно, вам лучше подождать, пока будут выпущены двоичные файлы для matplotlib Windows для python 3.4, и это то, что вы используете. Или вы можете перейти на python 3.3 и загрузить готовые двоичные файлы Windows для matplotlib для этой версии из http://matplotlib.org/downloads.html .

Я был в той же ситуации после перехода на python 3.4. У меня есть Visual Studio 2010, но я получаю процесс сборки Python, потому что это большая боль в заднице. Я смог найти неофициальные готовые двоичные файлы numpy и matplotlib для Python 3.4 по адресу http://www.lfd.uci.edu/~gohlke/pythonlibs/#matplotlib . Они построены с помощью Visual Studio, поэтому можно снять его, но у меня нет терпения, чтобы разобраться в пугающих деталях. Кстати, вам также нужно установить python-dateutil, pyparsing и модуль / библиотеку, называемую шестью из одного и того же репозитория, для некоторых базовых примеров matplotlib. [Совет для шляпы: ImportError: matplotlib требует dateutil ]. Вы, вероятно, можете отправить сопровождающую эту последнюю коллекцию бинарных файлов, чтобы узнать, как это сделать … и, возможно, сообщите нам, что именно. (Кажется, у вас установлена ​​Visual Studio 2008 [MSVC 9], или, по крайней мере, ваша установка Python 3.4 кажется, что вы ее используете и пытаетесь ее использовать.)

При работе с Python 3.4 используйте следующие версии numpy, scipy и т. Д., Следуя следующим образом: 1. используйте 32-битную версию python 3.4 2. установите для одного пользователя (для всех пакетов установки пользователя не удастся)

numpy: 1.8.2 (я использовал версию установщика Windows)
vispy: 0.2.1 (в основном скачать tar.gz файл, извлечь его и запустить python setup.py install)
scipy: 0.14.0 (я использовал версию установщика Windows)
pandas: 0.14.0 (я использовал версию установщика Windows)
openpyxl: 1.8.6 (в основном скачать tar.gz файл, извлечь его и запустить python setup.py install)

после выполнения вы можете проверить установленные пакеты на 1. запустить py из командной строки операционной системы 2. использовать следующую команду из import packagename *

[заменить packagename на нужный пакет, например, numpy], если вывод не отображается, значит, ваша установка в порядке

установить pyparsing, запустив pip install pyparsing

для matplotlib использовать текущий релиз релиза (1.4.0rc2)

http://sourceforge.net/projects/matplotlib/files/matplotlib/matplotlib-1.4.0rc2/

он поддерживает python 3.4. но не забывайте продолжать поиск обновлений для matplotlib для финальных выпусков.

наслаждаться