Pip, virtualenv ile Matplotlib hatasını yükleyin


106

Matplotlib'i yeni bir virtualenv'e kurmaya çalışıyorum.

Ben yaparken:

pip install matplotlib

veya

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

Bu hatayı alıyorum:

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

Neler olduğu hakkında bir fikri olan var mı?

Herhangi bir yardım çok takdir edilir.


2
The following required packages can not be built: freetype, pngHangisinin aynı hatanın daha yeni bir sürümünde (sanırım) olduğunu da görebilirsiniz pip.
— LondonRob

Yanıtlar:


177

Matplotlib'i inşa etmek bir python kitaplığı olmayan libpng(ve freetypeaynı zamanda) gerektirir , bu yüzden piponu (veya freetype) yüklemeyi ele almaz .

Satırları boyunca libpng-develve freetype-devel(veya işletim sisteminiz için eşdeğeri ne olursa olsun) bir şey yüklemeniz gerekir .

Matplotlib için bina gereksinimlerine / talimatlarına bakın.


44
Bilgi için teşekkürler! Sonunda ubuntu aşağıdaki bağımlılıklar yükleyerek çalışma var: libpng-dev, libjpeg8-dev, libfreetype6-dev.
— Darwin Tech

37
sudo apt-get build-dep python-matplotlibhile de yapar!
— grisaitis

2
Çalışabilir, ancak birkaç paket (bu yorum kutusuna sığabileceğinden daha fazla), ancak yaklaşık 0,6 GB değerinde paket kurmak istediğini unutmayın.
— Achal Dave

18
Benim debian (hırıltılı / kararsız) sistemimde, libfreetype6-devkurulu olsa bile başarısız oluyordu . Benim de pkg-configkurulmasına ihtiyacım olduğu ortaya çıktı .
— Jon

Aslında ubuntu 14.04'te libfreetype6-dev var. Matplotlib onu seçmiyor gibi görünüyor.
— tutuca


30

Bu sorunla iki kez mücadele ettiğim için (yeni kubuntu 15.04 kurulumundan sonra bile) ve freetype yüklemek hiçbir şeyi çözmediğinden, daha fazla araştırdım.

Çözüm:
Github sorunundan:

Bu hata yalnızca pkg-config kurulu değilse oluşur; Şimdilik
basit bir
sudo apt-get install pkg-config
dahil etme yollarını destekleyecektir.

Bu kurulumdan sonra sorunsuz devam eder.


Burada aynı. pip install matplotlib hata verdi: IMPORTANT WARNING: pkg-config is not installed. matplotlib may not be able to find some of its dependencies.Freetype kurulu değil görünüyor. Az önce yaptım brew install pkg-configve geçmeyi başardım .
— Lily

Windows Insider Preview'da Ubuntu'da Bash'deki sorun da budur
— Jens de Bruijn

27

Tamamlayıcı olarak Amazon EC2'de yapmam gereken şey:

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

6
Bir paketin sanal bir ortama yüklenmesi tavsiye edilir ki bu da pipçok güzel. Dolayısıyla sudo pip installpip'in masaya getirdiği kullanışlılığın çoğunu geçersiz kılar.
— Roman

8

OSX'te matplotlib'i şu yolla kurmayı başardım:

pip install matplotlib==1.4.0

sadece koştuktan sonra:

brew install freetype


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

benim için Ubuntu 14.04'te çalıştı


sudo apt-get install pkg-configİlk önce ihtiyacım vardı .
— jpcgt

@RahulChauhan: Lütfen alternatif çözümünüzü başka birinin cevabı olarak düzenlemeye çalışmak yerine ayrı bir cevap olarak gönderin.
— Ilmari Karonen

0

Yukarıdaki cevapların hiçbiri Mint'te benim için işe yaramadı, ben de yaptım:

sudo apt-get install build-essential g++

0

MacOSx kullanıyorsanız deneyin

xcode-select --install

Bu subprocess 32, başarısızlığın nedenine uygundur .


0

Yüklenecek gerekli paketleri azaltmak için ihtiyacınız olan

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

ve aşağıdaki paketleri yerel olarak yükleyeceksiniz

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

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.