Um Python normalerweise mit Software zu verwenden, die mit openFrameworks erstellt wurde, Chaosct's ofxPython oder Satoruhigas ofxPy (/ satoruhiga / ofxPy) ist einfach zu bedienen, aber ich wollte Python in dem Anaconda-Paket verwenden, das mit pyenv unter OSX installiert wurde, also habe ich es versucht.
Hier wird oF 0.9.8 unter OSX mit ofxPy verwendet. Einführung in Python 3.6.1, das mit Anaconda 3-4.3.1 geliefert wird.
In meinem Fall habe ich normalerweise eine App mit Projektgenerator erstellt. Natürlich wurde ofxPy hinzugefügt. Öffnen Sie das Projekt und füllen Sie zuerst die Python-Bibliothek. Da das Installationsverzeichnis "/ Users / me / .pyenv / version / anaconda3-4.3.1" lautet, ziehen Sie "libpython3.6m.dylib" in das lib-Verzeichnis. Zu diesem Zeitpunkt werden Sie gefragt, ob Sie die Bibliotheksdatei optional in das Projektverzeichnis kopieren möchten, müssen sie jedoch nicht kopieren.
Bearbeiten Sie als Nächstes die Build-Einstellungen für Ihr Projekt.
Fügen Sie Folgendes zu Header Search Paths
hinzu. Ersetzen Sie das Verzeichnis durch das Anaconda-Installationsverzeichnis, das entsprechend verwendet wird.
/Users/me/.pyenv/versions/anaconda3-4.3.1/include
/Users/me/.pyenv/versions/anaconda3-4.3.1/include/python3.6m
Dann Bibliothekssuchpfade
/Users/me/.pyenv/versions/anaconda3-4.3.1/lib
Legen Sie außerdem einen ähnlichen Pfad für Runpath-Suchpfade fest, um zu verhindern, dass Ihnen zur Laufzeit "Keine Bibliothek" mitgeteilt wird.
/Users/me/.pyenv/versions/anaconda3-4.3.1/lib
Fügen Sie in den Erstellungsphasen des Projekts "libpython3.6m.dylib" zu "Dateien kopieren" hinzu. In meinem Fall habe ich es gerade hinzugefügt und weder das Ziel noch den Unterpfad festgelegt.
Grundsätzlich sollte die Beispieldatei von ofxPy funktionieren. Wenn Sie jedoch nur den Vorgang überprüfen, ist dies erfolgreich, wenn der folgende Code keinen Fehler enthält.
Wichtig ist, dass Sie Python möglicherweise nicht mit der Meldung "Set $ PYTHONHOME
" verwenden können. Verwenden Sie daher die Funktion ** putenv
, um die Umgebungsvariable im Programm auf den Pfad zur Python-Startseite (= Anaconda-Verzeichnis) festzulegen. Ist anzugeben **.
ofApp.h
#pragma once
#include "ofMain.h"
#include "ofxPy.h"
class ofApp : public ofBaseApp{
public:
void setup();
void update();
void draw();
ofxPy::Context python;
};
ofApp.cpp
#include "ofApp.h"
//--------------------------------------------------------------
void ofApp::setup(){
ofSetFrameRate(0);
ofSetVerticalSync(false);
ofBackground(0);
putenv((char *)"PYTHONHOME=/Users/me/.pyenv/versions/anaconda3-4.3.1");
python.setup();
}
Sie sollten es verwenden können.
Recommended Posts