Ошибка установки Matplotlib на Mac OSX 10.8 Mountain Lion
Я попытался установить 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?
Ответы
Ответ 1
Следующее работало для установки matplotlib после установки python в соответствии с инструкциями 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
И установка прошла успешно.
Ответ 2
Это может помочь людям искать не домохозяйство.
Моя цель: использовать pip install
для построения matplotlib для несистемной сборки python 2.7.3.
Используя новейшие инструменты командной строки X-Code и X-Code по состоянию на февраль 2013 года, независимо от того, какую гимнастику я пробовал, я всегда получал ошибки шаблона С++ ostream при компиляции ft2build с gcc.
Мне удалось получить установку pip для работы со следующими env vars:
export CC=clang
export CXX=clang++
export LDFLAGS="-L/usr/X11/lib"
export CFLAGS="-I/usr/X11/include -I/usr/X11/include/freetype2"
Я просто заставил clang и добавил мои пути xquartz. Никаких дополнительных команд pkg-config или libpng, никаких символических ссылок sudo-ed.
Ответ 3
Я думаю, что другие ответы на правильном пути, но я столкнулся с этой же проблемой и могу подтвердить это:
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
Таким образом, я подозреваю, что проблема связана с моими системными путями или с матовым словом. Поскольку я ленив, я просто попытался установить головку пакета matplotlib из github:
pip install git+git://github.com/matplotlib/matplotlib.git#egg=matplotlib-dev
и это сработало для меня.
Ответ 4
Вот рецепт brew + pip, который я использовал с холодного запуска. Если у вас уже есть 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
Ответ 5
Обратите внимание на уведомления "no pkg-config". У вас должен быть pkg-config
на вашем пути поиска, и, по-видимому, он должен быть версией доморощенного, чтобы он знал, где находятся библиотеки для доморощенных библиотек.
Ответ 6
Вам нужен freetype:
brew install freetype
См. следующее:
http://comments.gmane.org/gmane.comp.python.matplotlib.general/31394
Ответ 7
Я также использую mac air с OS X ver 10.8.2.
Использование следующих команд может избавиться от этой ошибки:
brew установить freetype
brew установить 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.
Ответ 8
Я нашел установку этих pacakges через homebrew, чтобы быть самым надежным методом
# 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
Ответ 9
Я также использую MacOS 10.8, и я столкнулся с той же проблемой, что и не обнаружил заголовок ft2build.h, когда пытался установить matplotlib, что я сделал для решения проблемы с сообщением:
1) заменив "ft2build.h" следующим вызовом в файле "setupext.py":
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)
Ответ 10
Я думаю, но не тестировал, что проблема решена в восходящем коммите matplotlib. Вот мои причины:
Обсуждение:
https://github.com/vbraun/sage/commit/5d17ca989eb58559af8f43b43e368c378c1bf6bb
Fix:
https://github.com/vbraun/sage/blob/5d17ca989eb58559af8f43b43e368c378c1bf6bb/build/pkgs/matplotlib/patches/pkg-config.patch
Я исправил проблему с ответом на вопрос Cyris.
Ответ 11
У меня также была аналогичная проблема, и я исправил ее достаточно простым способом с помощью доморощенного.
По этой причине вам не нужно связывать библиотеки freetype
. Основная проблема заключается в том, что после установки freetype
с помощью homebrew вам предлагается добавить
-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