chaosct / ofxpython Goto Github PK
View Code? Open in Web Editor NEWopenFrameworks addon to embed Python
License: Other
openFrameworks addon to embed Python
License: Other
I'm on Linux 64 (Debian), I have cloned the repo in addons/
and I get:
cannot find addon source file src/ofxPython.cpp
trying to compile the examples with make
same error using CodeBlocks and movig the example folder in myApps
Full output:
HOST_OS=Linux
HOST_ARCH=x86_64
checking pkg-config libraries: cairo zlib gstreamer-app-1.0 gstreamer-1.0 gstreamer-video-1.0 gstreamer-base-1.0 libudev freetype2 fontconfig sndfile openal openssl libpulse-simple alsa gl glu glew gtk+-3.0
Compiling OF library for Release
make[1]: Entering directory '/home/edne/projects/oF/libs/openFrameworksCompiled/project'
HOST_OS=Linux
HOST_ARCH=x86_64
checking pkg-config libraries: cairo zlib gstreamer-app-1.0 gstreamer-1.0 gstreamer-video-1.0 gstreamer-base-1.0 libudev freetype2 fontconfig sndfile openal openssl libpulse-simple alsa gl glu glew gtk+-3.0
HOST_OS=Linux
HOST_ARCH=x86_64
checking pkg-config libraries: cairo zlib gstreamer-app-1.0 gstreamer-1.0 gstreamer-video-1.0 gstreamer-base-1.0 libudev freetype2 fontconfig sndfile openal openssl libpulse-simple alsa gl glu glew gtk+-3.0
HOST_OS=Linux
HOST_ARCH=x86_64
checking pkg-config libraries: cairo zlib gstreamer-app-1.0 gstreamer-1.0 gstreamer-video-1.0 gstreamer-base-1.0 libudev freetype2 fontconfig sndfile openal openssl libpulse-simple alsa gl glu glew gtk+-3.0
Done!
make[1]: Leaving directory '/home/edne/projects/oF/libs/openFrameworksCompiled/project'
Compiling example_Callbacks for Release
make[1]: Entering directory '/home/edne/projects/oF/addons/ofxPython/example_Callbacks'
HOST_OS=Linux
HOST_ARCH=x86_64
checking pkg-config libraries: cairo zlib gstreamer-app-1.0 gstreamer-1.0 gstreamer-video-1.0 gstreamer-base-1.0 libudev freetype2 fontconfig sndfile openal openssl libpulse-simple alsa gl glu glew gtk+-3.0
../../../libs/openFrameworksCompiled/project/makefileCommon/config.addons.mk:164: *** cannot find addon source file src/ofxPython.cpp. Stop.
make[1]: Leaving directory '/home/edne/projects/oF/addons/ofxPython/example_Callbacks'
../../../libs/openFrameworksCompiled/project/makefileCommon/compile.project.mk:126: recipe for target 'Release' failed
make: *** [Release] Error 2
I see access of private variables:
ofTexture::bUseExternalTextureID
ofTexture::useTextureMatrix
ofTexture::textureMatrix
ofLight::destroy
Incorrect args to:
ofSetupOpenGL()
ofMatrixStack::ofMatrixStack()
I realize this is a huge issue wrapped in a single bug and I've just started looking at ofxPython but is there a way to remove the access to these member variables and use the ofTextureParams object? Happy to look at it myself as well.
Is it possible to send a message back to C++ from python? Perhaps a callback or a simple mechanism?
This is probably related to issue #1. For OSX, are user-installed Python interpreters or even virtualenvs possible?
I get a ton of errors when compiling on of the examples. Here an excerpt:
../../../addons/ofxPython/src/bindings/desktop/openFrameworks_wrap.cpp: In function ‘PyObject* _wrap_ofFloatImage_reloadTexture(PyObject*, PyObject*)’:
../../../addons/ofxPython/src/bindings/desktop/openFrameworks_wrap.cpp:12055:67: error: ‘class ofImage_<float>’ has no member named ‘reloadTexture’
arg1 = reinterpret_cast< ofImage_< float > * >(argp1); (arg1)->reloadTexture(); resultobj = SWIG_Py_Void(); return resultobj;
^
In file included from ../../../libs/openFrameworks/ofMain.h:64:0,
from ../../../addons/ofxPython/src/bindings/desktop/openFrameworks_wrap.cpp:3223:
../../../libs/openFrameworks/graphics/ofImage.h: In function ‘PyObject* _wrap_ofFloatImage_width_set(PyObject*, PyObject*)’:
../../../libs/openFrameworks/graphics/ofImage.h:593:9: error: ‘int ofImage_<float>::width’ is protected
int width; ///< \brief Image width in pixels.
^
../../../addons/ofxPython/src/bindings/desktop/openFrameworks_wrap.cpp:12065:56: error: within this context
arg2 = static_cast< int >(val2); if (arg1) (arg1)->width = arg2; resultobj = SWIG_Py_Void(); return resultobj; fail:
^
In file included from ../../../libs/openFrameworks/ofMain.h:64:0,
from ../../../addons/ofxPython/src/bindings/desktop/openFrameworks_wrap.cpp:3223:
../../../libs/openFrameworks/graphics/ofImage.h: In function ‘PyObject* _wrap_ofFloatImage_width_get(PyObject*, PyObject*)’:
../../../libs/openFrameworks/graphics/ofImage.h:593:9: error: ‘int ofImage_<float>::width’ is protected
int width; ///< \brief Image width in pixels.
^
../../../addons/ofxPython/src/bindings/desktop/openFrameworks_wrap.cpp:12072:83: error: within this context
arg1 = reinterpret_cast< ofImage_< float > * >(argp1); result = (int) ((arg1)->width);
^
In file included from ../../../libs/openFrameworks/ofMain.h:64:0,
from ../../../addons/ofxPython/src/bindings/desktop/openFrameworks_wrap.cpp:3223:
../../../libs/openFrameworks/graphics/ofImage.h: In function ‘PyObject* _wrap_ofFloatImage_height_set(PyObject*, PyObject*)’:
../../../libs/openFrameworks/graphics/ofImage.h:594:9: error: ‘int ofImage_<float>::height’ is protected
int height; ///< \brief Image Height in pixels.
^
../../../addons/ofxPython/src/bindings/desktop/openFrameworks_wrap.cpp:12082:56: error: within this context
arg2 = static_cast< int >(val2); if (arg1) (arg1)->height = arg2; resultobj = SWIG_Py_Void(); return resultobj; fail:
^
In file included from ../../../libs/openFrameworks/ofMain.h:64:0,
from ../../../addons/ofxPython/src/bindings/desktop/openFrameworks_wrap.cpp:3223:
../../../libs/openFrameworks/graphics/ofImage.h: In function ‘PyObject* _wrap_ofFloatImage_height_get(PyObject*, PyObject*)’:
../../../libs/openFrameworks/graphics/ofImage.h:594:9: error: ‘int ofImage_<float>::height’ is protected
int height; ///< \brief Image Height in pixels.
^
../../../addons/ofxPython/src/bindings/desktop/openFrameworks_wrap.cpp:12089:83: error: within this context
arg1 = reinterpret_cast< ofImage_< float > * >(argp1); result = (int) ((arg1)->height);
^
In file included from ../../../libs/openFrameworks/ofMain.h:64:0,
from ../../../addons/ofxPython/src/bindings/desktop/openFrameworks_wrap.cpp:3223:
../../../libs/openFrameworks/graphics/ofImage.h: In function ‘PyObject* _wrap_ofFloatImage_bpp_set(PyObject*, PyObject*)’:
../../../libs/openFrameworks/graphics/ofImage.h:595:9: error: ‘int ofImage_<float>::bpp’ is protected
int bpp; ///< \brief Bits per image pixel.
^
../../../addons/ofxPython/src/bindings/desktop/openFrameworks_wrap.cpp:12099:56: error: within this context
arg2 = static_cast< int >(val2); if (arg1) (arg1)->bpp = arg2; resultobj = SWIG_Py_Void(); return resultobj; fail:
had a problem with line 317 in ofxPython.cpp
fixed by changing
ofxPythonObject fromFloat(double d)
to
ofxPythonObject ofxPythonObject::fromFloat(double d)
i am trying to make your addon work on my raspberry pi 3.
i updated addon_config.mk and generatebindings.sh
as suggested by dan here:
danomatika/swig-openframeworks#11
but i still get errors when running generatebindings.sh
pi@raspberrypi:~/openFrameworks/addons/ofxPython $ ./generatebindings.sh
Generating for: linuxarm
LANG = python
CXXFLAGS = -I../../../libs/openFrameworks -DOF_LANG_python -DMODULE_NAME=openframeworks -DTARGET_OPENGLES
NAME = openFrameworks_wrap
DEST_DIR = ../src/bindings
swig -c++ -python -fcompact -fvirtual -I../../../libs/openFrameworks -DOF_LANG_python -DMODULE_NAME=openframeworks -DTARGET_OPENGLES -outdir ../lib openFrameworks.i
../../../libs/openFrameworks/utils/ofConstants.h:236: Warning 302: Identifier 'ofIndexType' redefined (ignored),
openFrameworks.i:121: Warning 302: previous definition of 'ofIndexType'.
../../../libs/openFrameworks/gl/ofFbo.h:12: Warning 362: operator= ignored
../../../libs/openFrameworks/gl/ofFbo.h:13: Error: Syntax error in input(3).
Makefile:69: recipe for target 'bindings' failed
make: *** [bindings] Error 1
Generating extra bindings:
CXXFLAGS = -I../../../libs/openFrameworks -I../src
NAME = openFrameworks_extra_wrap
DEST_DIR = ../src/bindings
swig -c++ -python -fcompact -fvirtual -I../../../libs/openFrameworks -I../src -outdir ../lib openframeworks_extra.i
mv openframeworks_extra_wrap.cxx openFrameworks_extra_wrap.cpp
swig -c++ -python -external-runtime openFrameworks_extra_wrap.h
mkdir -p ../src/bindings
mv *.h ../src/bindings
mv *.cpp ../src/bindings
copying openframeworks.py to examples
and more errors when running make on your examples.
https://gist.github.com/antimodular/c0ff8b52684e102f7b247cd6857cf02a
I've compiled the examples using Visual Studio (Windows 7). I got compiling to work (I'll create a pull request with the project files if you are interested), but running the examples results in a notice of a python error that there is no module named openframeworks. Any ideas?
oF 0.8.4, Python 2.7.9
Hello,
I stumbled upon an issue on osx 10.12.0 when compiling a program using ofxPython, python 2.7 and libC++'s regex. (Osx 10.13 and 10.14 don't seem to be concerned.)
I'm using XCode 8.1.
To reproduce :
#include "ofxPython.h" // --> loads /usr/include/python2.7/pyport.h
//#undef tolower // <-- uncomment to "fix" compilation issue
#include <regex> // --> /usr/include/c++/v1/regex
This leads to a macro-definition conflict. ofxPython defines tolower
, which is also used by libc++'s std::regex : /usr/include/c++/v1/regex:1216: error: too many arguments provided to function-like macro invocation : __ct_->tolower(&__s[0], &__s[0] + __s.size());
A temporary (and dirty) workaround is to reset the tolower macros before the regex include.
I have no idea how this affects the inner workings of python.
This issue is rather related to pyport.h from the Python project.
Reporting this issue to share my findings. Feel free to close anytime.
Hi,
I assume that in here are some up-to-date OF bindings. It would be great if these could be used from a python interpreter outside OF somehow ?
S
Currently, the ofxPython sources are referred as "../src", which would make xCode unable to find the sources if the example is copied to for example "apps/myapps".
Examples compile perfectly fine, but Xcode can't find Python.h when creating projects through the default Project Generator.
Hi Charles,
Is there any chance that this addon will ever be updated to newer versions of openframeworks and Python? I try to get it to work with of 0.11 and Python 3.9.5. So far without success.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.