Вопрос по matplotlib – Ошибка установки Matplotlib на Mac OSX 10.8 Mountain Lion

26

Я пытался установить matplotlib на свой MacBook Air, но он всегда выдает мне следующее сообщение об ошибке:

 Processing matplotlib-1.1.1_notests.tar.gz
 Running matplotlib-1.1.1/setup.py -q bdist_egg --dist-dir /tmp/easy_install-3jFpXK/matplotlib-1.1.1/egg-dist-tmp-jC7QY3
    basedirlist is: []
    ============================================================================
    BUILDING MATPLOTLIB
                matplotlib: 1.1.1
                    python: 2.7.2 (default, Jun 20 2012, 16:23:33)  [GCC 4.2.1
                            Compatible Apple Clang 4.0
                            (tags/Apple/clang-418.0.60)]
                  platform: darwin

    REQUIRED DEPENDENCIES
                     numpy: 1.6.1
                 freetype2: found, but unknown version (no pkg-config)
                            * WARNING: Could not find 'freetype2' headers in any
                            * of '.', './freetype2'.

    OPTIONAL BACKEND DEPENDENCIES
                    libpng: found, but unknown version (no pkg-config)
                            * Could not find 'libpng' headers in any of '.'
                   Tkinter: Tkinter: version not identified, Tk: 8.5, Tcl: 8.5
                      Gtk+: no
                            * Building for Gtk+ requires pygtk; you must be able
                            * to "import gtk" in your build/install environment
           Mac OS X native: yes
                        Qt: no
                       Qt4: no
                    PySide: no
                     Cairo: no

    OPTIONAL DATE/TIMEZONE DEPENDENCIES
                  datetime: present, version unknown
                  dateutil: 1.5
                      pytz: matplotlib will provide
    adding pytz

    OPTIONAL USETEX DEPENDENCIES
                    dvipng: 1.14
               ghostscript: 9.05
                     latex: 3.1415926

    [Edit setup.cfg to suppress the above messages]




  pymods ['pylab']
    packages ['matplotlib', 'matplotlib.backends', 'matplotlib.backends.qt4_editor', 'matplotlib.projections', 'matplotlib.testing', 'matplotlib.testing.jpl_units', 'matplotlib.tests', 'mpl_toolkits', 'mpl_toolkits.mplot3d', 'mpl_toolkits.axes_grid', 'mpl_toolkits.axes_grid1', 'mpl_toolkits.axisartist', 'matplotlib.sphinxext', 'matplotlib.tri', 'matplotlib.delaunay', 'pytz']
    warning: no files found matching 'KNOWN_BUGS'
    warning: no files found matching 'INTERACTIVE'
    warning: no files found matching 'MANIFEST'
    warning: no files found matching '__init__.py'
    warning: no files found matching 'examples/data/*'
    warning: no files found matching 'lib/mpl_toolkits'
    warning: no files found matching 'LICENSE*' under directory 'license'
    clang: warning: argument unused during compilation: '-mno-fused-madd'
    In file included from src/ft2font.cpp:3:
    src/ft2font.h:16:10: fatal error: 'ft2build.h' file not found

**#include <ft2build.h>
             ^
    1 error generated.
    error: Setup script exited with error: command 'clang' failed with exit status 1**

Я пытался установить freetype и libpng, используя homebrew, но он не работает. Как я могу получить ft2build.h?

У меня такая же проблема. Моя проблема заключалась в том, что серверы Github были недоступны, когда я пытался установить пакеты Homebrew, поэтому мне не удалось загрузить все пакеты. Правильные ответы предоставлены, я думаю, ниже, так что, вероятно, у вас сейчас получится, если вы попробуете. Léo Léopold Hertz 준영
Для записи у меня была другая ошибка:#error Tk 8.5 must be compiled with tcl.h from Tcl 8.5 сmatplotlib 1.5 вvirtualenv на Python 2.7.10+ построен из исходного кода. Смотрел на систему тк. С MacPorts,port install tk решил проблему (tcl был уже установлен через MacPorts). Ioannis Filippidis

Ваш Ответ

11   ответов
4

который я использовал с холодного старта. Если у вас уже есть Python, Gfortran и тому подобное, прыгайте в точку, где вам нужно. Решающие шаги, кажется,brew install freetype а такжеbrew install libpng до выполненияpip install matplotlib

$ ruby -e "$(curl -fsSkL raw.github.com/mxcl/homebrew,/go)"
$ brew doctor
$ brew install python
$ export PATH=/usr/local/bin:/usr/local/share/python:$PATH
$ easy_install pip
$ brew install gfortran
$ pip install numpy
$ pip install scipy
$ brew install pkg-config
$ brew install freetype
$ brew install libpng
$ pip install matplotlib
$ python
>>> import numpy
>>> import scipy
>>> import matplotlib
2

что «нет pkg-config» уведомления. У тебя должно бытьpkg-config в вашем поисковом пути, и, по-видимому, это должна быть доморощенная версия, чтобы он знал, где находятся доморощенные версии библиотек.

0

но не проверял, что проблема решена в последующем коммите matplotlib. Вот мои причины, почему:

Обсуждение:

https://github.com/vbraun/sage/commit/5d17ca989eb58559af8f43b43e368c378c1bf6bb

Fix:

https://github.com/vbraun/sage/blob/5d17ca989eb58559af8f43b43e368c378c1bf6bb/build/pkgs/matplotlib/patches/pkg-config.patch

Я решил проблему с мыслью об ответе Сириса.

8

что другие ответы находятся на правильном пути, но я столкнулся с этой же проблемой и могу подтвердить, что:

brew install pkg-config
brew install freetype
pip install matplotlib

даст тот же результат. Обычно на коробке с Ubuntu мой следующий ответ был бы

sudo apt-get install libfreetype-dev

или какой-то вариант этого, чтобы установить заголовок. Тем не менее, я не смог найти такой доморощенной упаковки. Кроме того, я смог найти нужный файл заголовка в довольно нормальном месте в моей системе:

zoidberg:~ matt$ locate ft2build.h
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.7.sdk/usr/X11/include/ft2build.h
/usr/X11/include/ft2build.h

Поэтому я подозреваю, что это либо проблема с моими системными путями, либо с пакетом matblotlib, собранным в домашних условиях. Поскольку я ленивый, я только что попытался установить заголовок пакета matplotlib из github:

pip install git+git://github.com/matplotlib/matplotlib.git#egg=matplotlib-dev

и это сработало для меня.

Конфигурация pkg была для меня недостающей частью. После того, как я заварила его, все заработало.
0

и я столкнулся с той же проблемой, что и при поиске заголовка ft2build.h, когда я пытался установить matplotlib, что я сделал для решения указанной проблемы:

1) замена & quot; ft2build.h & quot; в следующем вызове в файле & quot; setupext.py & quot; :

                                 return self._check_for_pkg_config('freetype2', 
                                 'ft2build.h',
                                  min_version='2.4', 
                                  version=version)

по полному пути к заголовку ft2build.h, в моем случае:

                                return self._check_for_pkg_config('freetype2', 
                               '/usr/local/Cellar/freetype/2.5.2/include/freetype2/ft2build.h',
                                min_version='2.4', 
                                version=version)
1

С помощью следующих команд можно избавиться от этой ошибки:
заварить установить freetype
brew install libpng
pip install matplotlib

Вот и все. Может быть некоторое предупреждение в процессе установки, но это не влияет.

Используйте следующий код Python для тестирования:

import matplotlib.pyplot as plt
plt.plot([1,2,3,4])
plt.ylabel('some numbers')
plt.show()  

который ссылается с URL:http://matplotlib.org/users/pyplot_tutorial.html.

25

Моя цель: использоватьpip install собрать matplotlib для несистемной сборки Python 2.7.3.

Используя новейшие инструменты командной строки X-Code и X-Code по состоянию на февраль 2013 года, независимо от того, какую гимнастику я пробовал, я всегда получал ошибки шаблона, связанные с o ++, связанные с ostream, при компиляции ft2build с gcc.

Мне удалось установить pip для работы со следующими переменными env:

export CC=clang
export CXX=clang++
export LDFLAGS="-L/usr/X11/lib"
export CFLAGS="-I/usr/X11/include -I/usr/X11/include/freetype2"

Я просто заставил лязгнуть и добавил свои пути xquartz. Никаких дополнительных сборок pkg-config или libpng, никаких sudo-ed символических ссылок.

Работал на OS X 10.9.1 "Mavericks". У тебя есть мой +1. Большое спасибо!
Это грязное быстрое исправление сработало и для меня! Я прочитал его, по какой-то причине отказался от него, а затем вернулся через два часа.
Сработало и у меня, когда все остальные варианты не сработали.
Это сработало и для меня на горном льве, спасибо.
2

Вам нужен свободный тип:

brew install freetype

Смотрите следующее:

http://comments.gmane.org/gmane.comp.python.matplotlib.general/31394

0

что установка этих пакетов через доморощенный является наиболее надежным методом

 # if you haven't installed python via brew already:
 brew install python

 # sets up python as default python instead of system python
 brew link python

 # Add more brew formulae so we can install our py libs with brew
 brew tap samueljohn/python
 brew tap homebrew/science

 # install numpy,scipy,matplotlib and dependencies ( gfortran, etc.. )
 brew install numpy
 brew install scipy
 brew insatll matplotlib
36

оответствии с инструкциямиthegreenroom, Эти инструкции не сработали для меня после того, как я установил Python. Я следовал инструкциямScipy.org установить NumPy и Scipy. Затем я сделал (адаптированный сверху ответ):

brew install freetype
brew install libpng

Однако я получил то же сообщение об ошибке, если я установил сpip install matplotlib или пытается установить из источника, делая

python setup.py build
python setup.py install

в каталоге matplotlib я клонировал черезgit clone https://github.com/matplotlib/matplotlib.git.

Ошибка сохранялась, пока я не побежал

brew link freetype

Затем из клонированной директории matplotlib я запустил

python setup.py build
python setup.py install

И установка прошла успешно.

@msunbot, спасибо! Полезно знать, что я сделал это на 10,7, прежде чем я обновил. Вы установили matplotlib после получения XQuartz?
Для справки, Apple не распространяет libpng / freetype с OSX 10.8. Это ошибка, которую я вижу, возвращается:$ brew install libpng Error: No available formula for libpng Apple distributed libpng with OS X until 10.8. It is also distributed as part of XQuartz. You can find the XQuartz installer here: http://xquartz.macosforge.org
На этапе сборки я вижу следующую ошибку:src/ft2font.cpp:854: error: explicit instantiation of ‘std::basic_ostream<_CharT, _Traits>& std::operator<<(std::basic_ostream<_CharT, _Traits>&, const std::basic_string<_CharT, _Traits, _Alloc>&) [with _CharT = char, _Traits = std::char_traits<char>, _Alloc = std::allocator<char>]’ but no definition available error: command 'gcc' failed with exit status 1
-1

и я исправил ее довольно просто, используя доморощенный напиток.

Вам не нужно связыватьfreetype библиотеки по этой причине. Основная проблема, после установкиfreetype используя доморощенный, вам говорят, чтобы добавить

-I/usr/local/opt/freetype/include 

на ваши CPPFLAGS. Однако одного этого недостаточно, и вы также должны добавитьfreetype2 подпапка, а также.

Итак, чтобы установить matplotlib, сделайте это:

brew install freetype
brew install libpng
LDFLAGS="-L/usr/local/opt/freetype/lib -L/usr/local/opt/libpng/lib" CPPFLAGS="-I/usr/local/opt/freetype/include -I/usr/local/opt/libpng/include -I/usr/local/opt/freetype/include/freetype2" pip install matplotlib

Похожие вопросы