Frage

Ich habe versucht, Matplotlib in Mac OSX Lion zu installieren. Versucht, die Binärdatei zu verwenden, die sich in der SourceFourge -Site befindet, aber ich habe diesen Fehler erhalten: "Matplotlib benötigt System Python 2.7 zum Installieren".

Ich ging zum Terminal und tippte Python -Version und seine Anforderungen überprüft.

Danach versuchte ich, das PIP zu benutzen, und während é den folgenden Fehler bekam:

"src/_image.cpp: 908: Fehler: Ungültige Verwendung des unvollständigen Typs 'Struktur png_info_def'"

Können Sie mir Hinweise geben, wie man es installiert?

Danke vielmals.

Bearbeiten: Ich habe einen Weg gefunden, ohne eine neue Version von Python installieren zu müssen:

http://the.taooof.com/space/blog/2011/07/24/2222

War es hilfreich?

Lösung

Sie können es mit einer "offiziellen" Python -Distribution versuchen, Apple hat möglicherweise die mitgelieferte. Hier finden Sie die 2.7: http://www.python.org/download/ Möglicherweise müssen Sie auch Numph-Afterwords neu installieren: http://sourceforge.net/projects/numpy/files/numpy/1.6.1/

Ich würde vorschlagen, Scipy auch zu installieren, lassen Sie mich wissen, ob es funktioniert;)

Andere Tipps

Dies liegt an einer Änderung der API für libpng v1.5 (die mit Mac OSX Lion enthalten ist). Die Änderungen wurden bereits stromaufwärts gedrückt, sodass Sie bis zur nächsten Version aus dem Upstream -Repository kompilieren müssen.

Sie können den Anweisungen auf folgen http://jholwinski.wordpress.com/2011/07/21/installing-matplotlib-on-os-x-10-7-with-homebrew/

Ich folgte dem Die Anweisungen von Seite. Ich bin festgefahren bei

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

Dann tat ich:

git clone https://github.com/matplotlib/matplotlib.git
cd matplotlib
python setup.py build
python setup.py install

Überprüfte meine Installation durch Eingabe des Terminals:

python
import matplotlib
print matplotlib.__version__
print matplotlib.__file__

Ich habe Version 0.10.0 Dev (zum Zeitpunkt dieses Schreibens) und Pfad/usr/local/cellar/...

Ich würde empfehlen, die Verwendung zu verwenden Macports, Es sollte sich um Abhängigkeiten kümmern und wäre unabhängig von der System -Python -Version.

BEARBEITEN: Nur ein paar Klarstellungen, unter Berücksichtigung von Kommentaren zu dieser Antwort.

Warum Macports (oder einen anderen Installationsprogramm) verwenden? Da sie sich um Abhängigkeiten kümmern, bieten Sie Funktionen für das Deinstallieren und Wechsel zwischen den Versionen (ich habe Letzteres erfolgreich für GCC und Python verwendet). Und weil der Standard -Installationsort nicht der ausführbare System ist. Das Überschreiben des Systems Python kann Anwendungen brechen, die darauf stützen (dies gilt sicherlich in vielen Linux -Verteilungen, möglicherweise weniger auf Mac OS X).

Wann ist es besonders nützlich? Wenn Sie auf einer Version von Python installieren möchten, die sich von System Python unterscheidet, und wenn Sie nicht-Python-Erweiterungen haben (C, C ++, FORTRAN ...).

Was ist die Abwärtsseite? Wie @Trond in den Kommentaren erwähnt hat, ist es gut, wenn Sie mit Standardkompilierungen von Paketen einverstanden sind. Sie haben keinen Griff über Konfigurations- oder Compiler -Flags, wie Sie es tun würden, wenn Sie aus der Quelle erstellt werden.

Eine gute Alternative zu Macports ist Fink, was Ihnen mehr Kontrolle zu geben scheint (aus der Quelle erstellen). Ich bin mir noch nicht sicher, ob es für Mac OS X Lion vollständig bereit ist.

Ich weiß, dass es viel mehr Zeit in Anspruch nehmen wird, aber ich würde die Installation von Python, Numpy und Matplotlib von der Quelle empfehlen, um sicherzustellen, dass Sie in Ihrem System konsistent sind. Aus dem Fehler könnte es so aussehen, als hätten Sie ein Problem mit der LIBPNG -Unterstützung. Ich habe eine geschriebene "So installieren Sie Python Dev Tools unter Mac OSX"Das finden Sie nützlich. Es enthält Anweisungen, wie Python, Numpy, Matplotlib und alle notwendigen Abhängigkeiten installiert werden können. Ich verstehe Gleicher Ansatz. Ich hoffe, Sie bringen es zum Laufen.

Sie können einfach die Python 2.6 -Version von Matplotlib installieren, vorausgesetzt, Python2.6 ist mit Lion enthalten (Py2.5 und 2.6 sind in Mac OS 10.6 "Snow Leopard" enthalten - Versuchen Sie es mit Tippen Python2.6 um herauszufinden, ob diese Version installiert ist.).

Auf MacPorts tun Sie dies über etwas wie:

sudo port install py26-matplotlib

wo py26 -... (oder py25 -..., py27 -... usw.) zeigt an, für welche Python-Version es gedacht ist. (Überprüfen Sie die Liste der Paletten/Ports, um den richtigen Paketnamen zu erhalten, falls ich falsch erraten habe.)

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top