Pip Install Matplotlib Fehler mit virtualenv


106

Ich versuche, matplotlib in einer neuen virtuellen Umgebung zu installieren.

Wenn ich es tue:

pip install matplotlib

oder

pip install http://sourceforge.net/projects/matplotlib/files/matplotlib/matplotlib-1.1.0/matplotlib-1.1.0.tar.gz

Ich erhalte diesen Fehler:

building 'matplotlib._png' extension

gcc -pthread -fno-strict-aliasing -DNDEBUG -g -fwrapv -O2 -Wall -fPIC -  DPY_ARRAY_UNIQUE_SYMBOL=MPL_ARRAY_API -DPYCXX_ISO_CPP_LIB=1 -I/usr/local/include -I/usr/include -I. -I/home/sam/django-projects/datazone/local/lib/python2.7/site-packages/numpy/core/include -I. -I/usr/include/python2.7 -c src/_png.cpp -o build/temp.linux-x86_64-2.7/src/_png.o

src/_png.cpp:10:20: fatal error: png.h: No such file or directory

compilation terminated.

error: command 'gcc' failed with exit status 1

Hat jemand eine Idee was los ist?

Jede Hilfe sehr geschätzt.


2
Sie können auch sehen, The following required packages can not be built: freetype, pngwelcher der gleiche Fehler in (ich denke) einer neueren Version von ist pip.
LondonRob

Antworten:


176

Für das Erstellen von Matplotlib ist libpng(und freetypeauch) keine Python-Bibliothek piperforderlich , daher ist die Installation (oder freetype) nicht möglich.

Sie müssen etwas in der Art von libpng-develund installieren freetype-devel(oder was auch immer das Äquivalent für Ihr Betriebssystem ist).

Siehe die Bauanforderungen / Anweisungen für matplotlib.


44
Danke für die Information! Ich kann es endlich arbeiten , indem Sie die folgenden Abhängigkeiten in ubuntu installieren: libpng-dev, libjpeg8-dev, libfreetype6-dev.
Darwin Tech

37
sudo apt-get build-dep python-matplotlibmacht auch den Trick!
Grisaitis

2
Es mag funktionieren, aber beachten Sie, dass es einige Pakete installieren möchte (mehr als in dieses Kommentarfeld passen), aber Pakete im Wert von etwa 0,6 GB.
Achal Dave

18
Auf meinem Debian-System (keuchend / instabil) schlug es sogar mit libfreetype6-devinstalliertem System fehl . Es stellte sich heraus, dass ich auch pkg-configinstalliert werden musste.
Jon

Ich habe tatsächlich libfreetype6-dev auf Ubuntu 14.04 installiert. Matplotlib scheint es nicht zu pflücken.
Tutuca


30

Da ich zweimal mit diesem Problem zu kämpfen hatte (auch nach der Neuinstallation von kubuntu 15.04) und die Installation von freetype nichts löste, habe ich weiter nachgeforscht.

Die Lösung:
Vom Github-Problem:

Dieser Fehler tritt nur auf, wenn pkg-config nicht installiert ist.
Ein einfacher
sudo apt-get install pkg-config
Wille stützt die Include-Pfade vorerst.

Nach dieser Installation läuft reibungslos.


Hier gilt das gleiche. pip install matplotlib gab mir Fehler: IMPORTANT WARNING: pkg-config is not installed. matplotlib may not be able to find some of its dependencies.Freetype zeigt nicht installiert. Ich habe es einfach getan brew install pkg-configund konnte durchkommen.
Lily

Dies ist auch das Problem bei Bash unter Ubuntu unter Windows Insider Preview
Jens de Bruijn

27

Als Ergänzung zu Amazon EC2 muss ich Folgendes tun:

sudo yum install freetype-devel
sudo yum install libpng-devel
sudo pip install matplotlib

6
Es wird empfohlen, ein Paket in einer virtuellen Umgebung zu installieren, was sehr pipschön ist. Daher wird der sudo pip installgrößte Teil des Nutzens, den pip auf den Tisch bringt, negiert.
Roman

8

Unter OSX konnte ich matplotlib installieren über:

pip install matplotlib==1.4.0

erst nachdem ich gelaufen bin:

brew install freetype


2
sudo apt-get install libpng-dev libjpeg8-dev libfreetype6-dev

arbeitete für mich unter Ubuntu 14.04


Ich brauchte aber sudo apt-get install pkg-configzuerst.
jpcgt

@RahulChauhan: Bitte veröffentlichen Sie Ihre alternative Lösung als separate Antwort, anstatt zu versuchen, sie in die Antwort eines anderen zu bearbeiten.
Ilmari Karonen

0

Keine der oben genannten Antworten hat bei mir in Mint funktioniert, also habe ich:

sudo apt-get install build-essential g++

0

Wenn unter MacOSx versuchen

xcode-select --install

Dies entspricht subprocess 32dem Grund für den Ausfall.


0

Um die für die Installation erforderlichen Pakete zu reduzieren, benötigen Sie nur

apt-get install -y \
    libfreetype6-dev \
    libxft-dev && \
    pip install matplotlib

und Sie erhalten die folgenden Pakete lokal installiert

Collecting matplotlib
  Downloading matplotlib-2.2.0-cp35-cp35m-manylinux1_x86_64.whl (12.5MB)
Collecting pytz (from matplotlib)
  Downloading pytz-2018.3-py2.py3-none-any.whl (509kB)
Collecting python-dateutil>=2.1 (from matplotlib)
  Downloading python_dateutil-2.6.1-py2.py3-none-any.whl (194kB)
Collecting pyparsing!=2.0.4,!=2.1.2,!=2.1.6,>=2.0.1 (from matplotlib)
  Downloading pyparsing-2.2.0-py2.py3-none-any.whl (56kB)
Requirement already satisfied: six>=1.10 in /opt/conda/envs/pytorch-py35/lib/python3.5/site-packages (from matplotlib)
Collecting cycler>=0.10 (from matplotlib)
  Downloading cycler-0.10.0-py2.py3-none-any.whl
Collecting kiwisolver>=1.0.1 (from matplotlib)
  Downloading kiwisolver-1.0.1-cp35-cp35m-manylinux1_x86_64.whl (949kB)
Requirement already satisfied: numpy>=1.7.1 in /opt/conda/envs/pytorch-py35/lib/python3.5/site-packages (from matplotlib)
Requirement already satisfied: setuptools in /opt/conda/envs/pytorch-py35/lib/python3.5/site-packages/setuptools-27.2.0-py3.5.egg (from kiwisolver>=1.0.1->matplotlib)
Installing collected packages: pytz, python-dateutil, pyparsing, cycler, kiwisolver, matplotlib
Successfully installed cycler-0.10.0 kiwisolver-1.0.1 matplotlib-2.2.0 pyparsing-2.2.0 python-dateutil-2.6.1 pytz-2018.3

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.