Hello all,
I just recompiled Gem from today git to try the libvlc support. Everything went ok, and I have a gem_videoVLC.so file. But in Pd, i can't see no backend for VLC, arghh. I only have the Darwin one: [pix_video]: backend #0='Darwin' : darwin dv iidc analog
and trying to send [device screen://( doesn't work Do I miss something obvious?
I compiled using: PKG_LIBVLC_CFLAGS=-I/Applications/VLC.app/Contents/MacOS/include PKG_LIBVLC_LIBS="-L/Applications/VLC.app/Contents/MacOS/lib -lvlc" ./configure --with-pd=/Applications/Pd-extended.app/Contents/Resources/include/pd/ --enable-fat-binary=i386 --with-ftgl-includes=/sw/include/ --with-libvlc-includes=-I/Applications/VLC.app/Contents/MacOS/include --with-libvlc-libs="-L/Applications/VLC.app/Contents/MacOS/lib -lvlc"
I'm under Pd-extended-0.42.5 under 10.6.8 Last VLC release : 2.0.1
thx in advance. Best, n
On 04/03/12 22:06, Nicolas Montgermont wrote:
Hello all,
Do I miss something obvious?
what does it say on the console?
i suspect that it simply cannot find the libvlc.so when loading the gem_videoVLC.so plugin. try something like: $ cd /path/to/Gem $ LD_LIBRARY_PATH=/Applications/VLC.app/Contents/MacOS/lib pd -lib Gem
fgmasdr IOhannes
Le 03/04/12 22:45, IOhannes m zmölnig a écrit :
$ cd /path/to/Gem $ LD_LIBRARY_PATH=/Applications/VLC.app/Contents/MacOS/lib pd -lib Gem
The log is the same with or without the LD_LIBRARY_PATH, it is:
Machiavel:Gem nix$ LD_LIBRARY_PATH=/Applications/VLC.app/Contents/MacOS/lib /Applications/Pd-extended.app/Contents/MacOS/Pd-extended [...] load plugins 'video' in './' pattern : ./gem_video*.so dylib loading file './gem_videoDarwin.so'! dylib loading file './gem_videoVLC.so'! library loading returned: dlerror 'dlopen(./gem_videoVLC.so, 2): Symbol not found: _libvlc_media_add_option Referenced from: /Users/nix/github/Gem/plugins/videoVLC/.libs/gem_videoVLC.so Expected in: flat namespace in /Users/nix/github/Gem/plugins/videoVLC/.libs/gem_videoVLC.so'
I'm not sure what it means,... what I don't understand is it doesn't seen to be linked at all to libvlc:
Machiavel:Gem nix$ otool -L gem_videoVLC.so gem_videoVLC.so: /usr/lib/libstdc++.6.dylib (compatibility version 7.0.0, current version 7.9.0) /System/Library/Frameworks/QuickTime.framework/Versions/A/QuickTime (compatibility version 1.0.0, current version 1789.0.0) /System/Library/Frameworks/Carbon.framework/Versions/A/Carbon (compatibility version 2.0.0, current version 152.0.0) /System/Library/Frameworks/Cocoa.framework/Versions/A/Cocoa (compatibility version 1.0.0, current version 15.0.0) /System/Library/Frameworks/AGL.framework/Versions/A/AGL (compatibility version 1.0.0, current version 1.0.0) /usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current version 125.2.11) /usr/lib/libz.1.dylib (compatibility version 1.0.0, current version 1.2.3)
libvlc is only appearing in the search path of the library loading:
Machiavel:Gem nix$ otool -l gem_videoVLC.so [...] Load command 14 cmd LC_RPATH cmdsize 68 path /Applications/VLC.app/Contents/MacOS/lib/libvlc.dylib (offset 12)
any idea? I'm copying the plugins and the Gem.pd_darwin inside Pd-extended extra/Gem path if that matters. thx, n
hey nicolas
i reproduced what you did and also ended up with the gem_videoVLC.so plugin, though on x86_64, with "[pix_video]: no video backends found!".
I am also getting: library loading returned: dlerror 'dlopen(./gem_videoVLC.so, 2): Library not loaded: @loader_path/lib/libvlc.5.dylib Referenced from: /Users/megrimm/Library/Pd/Gem/plugins/videoVLC/.libs/gem_videoVLC.so Reason: image not found'
though i differ with you in running otool -l gem_videoVLC.so: Load command 12 cmd LC_LOAD_DYLIB cmdsize 56 name @loader_path/lib/libvlc.5.dylib (offset 24) time stamp 2 Wed Dec 31 19:00:02 1969 current version 9.0.0 compatibility version 9.0.0
maybe we can figure this out today. let me know what you find out. seems to just not be finding libvlc.5.dylib and thats all....
cheers m
On Wed, Apr 4, 2012 at 3:56 AM, Nicolas Montgermont nicolas_montgermont@yahoo.fr wrote:
Le 03/04/12 22:45, IOhannes m zmölnig a écrit :
$ cd /path/to/Gem $ LD_LIBRARY_PATH=/Applications/VLC.app/Contents/MacOS/lib pd -lib Gem
The log is the same with or without the LD_LIBRARY_PATH, it is:
Machiavel:Gem nix$ LD_LIBRARY_PATH=/Applications/VLC.app/Contents/MacOS/lib /Applications/Pd-extended.app/Contents/MacOS/Pd-extended [...] load plugins 'video' in './' pattern : ./gem_video*.so dylib loading file './gem_videoDarwin.so'! dylib loading file './gem_videoVLC.so'! library loading returned: dlerror 'dlopen(./gem_videoVLC.so, 2): Symbol not found: _libvlc_media_add_option Referenced from: /Users/nix/github/Gem/plugins/videoVLC/.libs/gem_videoVLC.so Expected in: flat namespace in /Users/nix/github/Gem/plugins/videoVLC/.libs/gem_videoVLC.so'
I'm not sure what it means,... what I don't understand is it doesn't seen to be linked at all to libvlc:
Machiavel:Gem nix$ otool -L gem_videoVLC.so gem_videoVLC.so: /usr/lib/libstdc++.6.dylib (compatibility version 7.0.0, current version 7.9.0) /System/Library/Frameworks/QuickTime.framework/Versions/A/QuickTime (compatibility version 1.0.0, current version 1789.0.0) /System/Library/Frameworks/Carbon.framework/Versions/A/Carbon (compatibility version 2.0.0, current version 152.0.0) /System/Library/Frameworks/Cocoa.framework/Versions/A/Cocoa (compatibility version 1.0.0, current version 15.0.0) /System/Library/Frameworks/AGL.framework/Versions/A/AGL (compatibility version 1.0.0, current version 1.0.0) /usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current version 125.2.11) /usr/lib/libz.1.dylib (compatibility version 1.0.0, current version 1.2.3)
libvlc is only appearing in the search path of the library loading:
Machiavel:Gem nix$ otool -l gem_videoVLC.so [...] Load command 14 cmd LC_RPATH cmdsize 68 path /Applications/VLC.app/Contents/MacOS/lib/libvlc.dylib (offset 12)
any idea? I'm copying the plugins and the Gem.pd_darwin inside Pd-extended extra/Gem path if that matters. thx, n
GEM-dev mailing list GEM-dev@iem.at http://lists.puredata.info/listinfo/gem-dev
@loader_path is where the plugin was loaded from, so in your case: /Users/megrimm/Library/Pd/Gem/plugins/videoVLC/.libs/
That means its looking for libvlc here: /Users/megrimm/Library/Pd/Gem/plugins/videoVLC/.libs/lib/libvlc.5.dylib
On Mac OS X, the thing to do is to link against the libvlc included in the VLC app.Then anyone who wants to use the VLC plugin for Gem just installs the normal VLC app. You can find that here: /Applications/VLC.app/Contents/MacOS/lib/
That would mean adding -I/Applications/VLC.app/Contents/MacOS/include to CPPFLAGS and -L/Applications/VLC.app/Contents/MacOS/lib/ to LDFLAGS for the build. IMHO, the Gem build system would do that when it builds the VLC plugin on Mac OS X.
.hc
On Apr 4, 2012, at 8:40 AM, m.e.grimm wrote:
hey nicolas
i reproduced what you did and also ended up with the gem_videoVLC.so plugin, though on x86_64, with "[pix_video]: no video backends found!".
I am also getting: library loading returned: dlerror 'dlopen(./gem_videoVLC.so, 2): Library not loaded: @loader_path/lib/libvlc.5.dylib Referenced from: /Users/megrimm/Library/Pd/Gem/plugins/videoVLC/.libs/gem_videoVLC.so Reason: image not found'
though i differ with you in running otool -l gem_videoVLC.so: Load command 12 cmd LC_LOAD_DYLIB cmdsize 56 name @loader_path/lib/libvlc.5.dylib (offset 24) time stamp 2 Wed Dec 31 19:00:02 1969 current version 9.0.0 compatibility version 9.0.0
maybe we can figure this out today. let me know what you find out. seems to just not be finding libvlc.5.dylib and thats all....
cheers m
On Wed, Apr 4, 2012 at 3:56 AM, Nicolas Montgermont nicolas_montgermont@yahoo.fr wrote:
Le 03/04/12 22:45, IOhannes m zmölnig a écrit :
$ cd /path/to/Gem $ LD_LIBRARY_PATH=/Applications/VLC.app/Contents/MacOS/lib pd -lib Gem
The log is the same with or without the LD_LIBRARY_PATH, it is:
Machiavel:Gem nix$ LD_LIBRARY_PATH=/Applications/VLC.app/Contents/MacOS/lib /Applications/Pd-extended.app/Contents/MacOS/Pd-extended [...] load plugins 'video' in './' pattern : ./gem_video*.so dylib loading file './gem_videoDarwin.so'! dylib loading file './gem_videoVLC.so'! library loading returned: dlerror 'dlopen(./gem_videoVLC.so, 2): Symbol not found: _libvlc_media_add_option Referenced from: /Users/nix/github/Gem/plugins/videoVLC/.libs/gem_videoVLC.so Expected in: flat namespace in /Users/nix/github/Gem/plugins/videoVLC/.libs/gem_videoVLC.so'
I'm not sure what it means,... what I don't understand is it doesn't seen to be linked at all to libvlc:
Machiavel:Gem nix$ otool -L gem_videoVLC.so gem_videoVLC.so: /usr/lib/libstdc++.6.dylib (compatibility version 7.0.0, current version 7.9.0) /System/Library/Frameworks/QuickTime.framework/Versions/A/QuickTime (compatibility version 1.0.0, current version 1789.0.0) /System/Library/Frameworks/Carbon.framework/Versions/A/Carbon (compatibility version 2.0.0, current version 152.0.0) /System/Library/Frameworks/Cocoa.framework/Versions/A/Cocoa (compatibility version 1.0.0, current version 15.0.0) /System/Library/Frameworks/AGL.framework/Versions/A/AGL (compatibility version 1.0.0, current version 1.0.0) /usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current version 125.2.11) /usr/lib/libz.1.dylib (compatibility version 1.0.0, current version 1.2.3)
libvlc is only appearing in the search path of the library loading:
Machiavel:Gem nix$ otool -l gem_videoVLC.so [...] Load command 14 cmd LC_RPATH cmdsize 68 path /Applications/VLC.app/Contents/MacOS/lib/libvlc.dylib (offset 12)
any idea? I'm copying the plugins and the Gem.pd_darwin inside Pd-extended extra/Gem path if that matters. thx, n
GEM-dev mailing list GEM-dev@iem.at http://lists.puredata.info/listinfo/gem-dev
-- ____________________ m.e.grimm | m.f.a | ed.m. megrimm@gmail.com _________________________________
GEM-dev mailing list GEM-dev@iem.at http://lists.puredata.info/listinfo/gem-dev
----------------------------------------------------------------------------
hey hans...
are you talking about configuring Gem with something like this:
CPPFLAGS=-I/Applications/VLC.app/Contents/MacOS/include LDFLAGS=-L/Applications/VLC.app/Contents/MacOS/lib/ ./configure --with-pd=/Applications/Pd-extended.app/Contents/Resources/include/pd/ --enable-fat-binary=x86_64 --with-ftgl-includes=/sw/include/ --with-libvlc-includes=-I/Applications/VLC.app/Contents/MacOS/include --with-libvlc-libs=-L/Applications/VLC.app/Contents/MacOS/lib
because when I do so I get the same @loader_path/lib/libvlc.5.dylib
m
On Wed, Apr 4, 2012 at 9:58 AM, Hans-Christoph Steiner hans@at.or.at wrote:
@loader_path is where the plugin was loaded from, so in your case: /Users/megrimm/Library/Pd/Gem/plugins/videoVLC/.libs/
That means its looking for libvlc here: /Users/megrimm/Library/Pd/Gem/plugins/videoVLC/.libs/lib/libvlc.5.dylib
On Mac OS X, the thing to do is to link against the libvlc included in the VLC app.Then anyone who wants to use the VLC plugin for Gem just installs the normal VLC app. You can find that here: /Applications/VLC.app/Contents/MacOS/lib/
That would mean adding -I/Applications/VLC.app/Contents/MacOS/include to CPPFLAGS and -L/Applications/VLC.app/Contents/MacOS/lib/ to LDFLAGS for the build. IMHO, the Gem build system would do that when it builds the VLC plugin on Mac OS X.
.hc
On Apr 4, 2012, at 8:40 AM, m.e.grimm wrote:
hey nicolas
i reproduced what you did and also ended up with the gem_videoVLC.so plugin, though on x86_64, with "[pix_video]: no video backends found!".
I am also getting: library loading returned: dlerror 'dlopen(./gem_videoVLC.so, 2): Library not loaded: @loader_path/lib/libvlc.5.dylib Referenced from: /Users/megrimm/Library/Pd/Gem/plugins/videoVLC/.libs/gem_videoVLC.so Reason: image not found'
though i differ with you in running otool -l gem_videoVLC.so: Load command 12 cmd LC_LOAD_DYLIB cmdsize 56 name @loader_path/lib/libvlc.5.dylib (offset 24) time stamp 2 Wed Dec 31 19:00:02 1969 current version 9.0.0 compatibility version 9.0.0
maybe we can figure this out today. let me know what you find out. seems to just not be finding libvlc.5.dylib and thats all....
cheers m
On Wed, Apr 4, 2012 at 3:56 AM, Nicolas Montgermont nicolas_montgermont@yahoo.fr wrote:
Le 03/04/12 22:45, IOhannes m zmölnig a écrit :
$ cd /path/to/Gem $ LD_LIBRARY_PATH=/Applications/VLC.app/Contents/MacOS/lib pd -lib Gem
The log is the same with or without the LD_LIBRARY_PATH, it is:
Machiavel:Gem nix$ LD_LIBRARY_PATH=/Applications/VLC.app/Contents/MacOS/lib /Applications/Pd-extended.app/Contents/MacOS/Pd-extended [...] load plugins 'video' in './' pattern : ./gem_video*.so dylib loading file './gem_videoDarwin.so'! dylib loading file './gem_videoVLC.so'! library loading returned: dlerror 'dlopen(./gem_videoVLC.so, 2): Symbol not found: _libvlc_media_add_option Referenced from: /Users/nix/github/Gem/plugins/videoVLC/.libs/gem_videoVLC.so Expected in: flat namespace in /Users/nix/github/Gem/plugins/videoVLC/.libs/gem_videoVLC.so'
I'm not sure what it means,... what I don't understand is it doesn't seen to be linked at all to libvlc:
Machiavel:Gem nix$ otool -L gem_videoVLC.so gem_videoVLC.so: /usr/lib/libstdc++.6.dylib (compatibility version 7.0.0, current version 7.9.0) /System/Library/Frameworks/QuickTime.framework/Versions/A/QuickTime (compatibility version 1.0.0, current version 1789.0.0) /System/Library/Frameworks/Carbon.framework/Versions/A/Carbon (compatibility version 2.0.0, current version 152.0.0) /System/Library/Frameworks/Cocoa.framework/Versions/A/Cocoa (compatibility version 1.0.0, current version 15.0.0) /System/Library/Frameworks/AGL.framework/Versions/A/AGL (compatibility version 1.0.0, current version 1.0.0) /usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current version 125.2.11) /usr/lib/libz.1.dylib (compatibility version 1.0.0, current version 1.2.3)
libvlc is only appearing in the search path of the library loading:
Machiavel:Gem nix$ otool -l gem_videoVLC.so [...] Load command 14 cmd LC_RPATH cmdsize 68 path /Applications/VLC.app/Contents/MacOS/lib/libvlc.dylib (offset 12)
any idea? I'm copying the plugins and the Gem.pd_darwin inside Pd-extended extra/Gem path if that matters. thx, n
GEM-dev mailing list GEM-dev@iem.at http://lists.puredata.info/listinfo/gem-dev
-- ____________________ m.e.grimm | m.f.a | ed.m. megrimm@gmail.com _________________________________
GEM-dev mailing list GEM-dev@iem.at http://lists.puredata.info/listinfo/gem-dev
no,
you need to redefine the reference of the library, in the directory of your plugin:
install_name_tool -change /Applications/VLC.app/Contents/MacOS/lib/libvlc.5.dylib @loader_path/lib/libvlc.5.dylib gem_videoVLC.so
should work, I'm not sure of the order, see explanations here for example: http://qin.laya.com/tech_coding_help/dylib_linking.html
any idea for the problem in my case?
n Le 04/04/12 16:43, m.e.grimm a écrit :
hey hans...
are you talking about configuring Gem with something like this:
CPPFLAGS=-I/Applications/VLC.app/Contents/MacOS/include LDFLAGS=-L/Applications/VLC.app/Contents/MacOS/lib/ ./configure --with-pd=/Applications/Pd-extended.app/Contents/Resources/include/pd/ --enable-fat-binary=x86_64 --with-ftgl-includes=/sw/include/ --with-libvlc-includes=-I/Applications/VLC.app/Contents/MacOS/include --with-libvlc-libs=-L/Applications/VLC.app/Contents/MacOS/lib
because when I do so I get the same @loader_path/lib/libvlc.5.dylib
m
On Wed, Apr 4, 2012 at 9:58 AM, Hans-Christoph Steinerhans@at.or.at wrote:
@loader_path is where the plugin was loaded from, so in your case: /Users/megrimm/Library/Pd/Gem/plugins/videoVLC/.libs/
That means its looking for libvlc here: /Users/megrimm/Library/Pd/Gem/plugins/videoVLC/.libs/lib/libvlc.5.dylib
On Mac OS X, the thing to do is to link against the libvlc included in the VLC app.Then anyone who wants to use the VLC plugin for Gem just installs the normal VLC app. You can find that here: /Applications/VLC.app/Contents/MacOS/lib/
That would mean adding -I/Applications/VLC.app/Contents/MacOS/include to CPPFLAGS and -L/Applications/VLC.app/Contents/MacOS/lib/ to LDFLAGS for the build. IMHO, the Gem build system would do that when it builds the VLC plugin on Mac OS X.
.hc
On Apr 4, 2012, at 8:40 AM, m.e.grimm wrote:
hey nicolas
i reproduced what you did and also ended up with the gem_videoVLC.so plugin, though on x86_64, with "[pix_video]: no video backends found!".
I am also getting: library loading returned: dlerror 'dlopen(./gem_videoVLC.so, 2): Library not loaded: @loader_path/lib/libvlc.5.dylib Referenced from: /Users/megrimm/Library/Pd/Gem/plugins/videoVLC/.libs/gem_videoVLC.so Reason: image not found'
though i differ with you in running otool -l gem_videoVLC.so: Load command 12 cmd LC_LOAD_DYLIB cmdsize 56 name @loader_path/lib/libvlc.5.dylib (offset 24) time stamp 2 Wed Dec 31 19:00:02 1969 current version 9.0.0 compatibility version 9.0.0
maybe we can figure this out today. let me know what you find out. seems to just not be finding libvlc.5.dylib and thats all....
cheers m
On Wed, Apr 4, 2012 at 3:56 AM, Nicolas Montgermont nicolas_montgermont@yahoo.fr wrote:
Le 03/04/12 22:45, IOhannes m zmölnig a écrit :
$ cd /path/to/Gem $ LD_LIBRARY_PATH=/Applications/VLC.app/Contents/MacOS/lib pd -lib Gem
The log is the same with or without the LD_LIBRARY_PATH, it is:
Machiavel:Gem nix$ LD_LIBRARY_PATH=/Applications/VLC.app/Contents/MacOS/lib /Applications/Pd-extended.app/Contents/MacOS/Pd-extended [...] load plugins 'video' in './' pattern : ./gem_video*.so dylib loading file './gem_videoDarwin.so'! dylib loading file './gem_videoVLC.so'! library loading returned: dlerror 'dlopen(./gem_videoVLC.so, 2): Symbol not found: _libvlc_media_add_option Referenced from: /Users/nix/github/Gem/plugins/videoVLC/.libs/gem_videoVLC.so Expected in: flat namespace in /Users/nix/github/Gem/plugins/videoVLC/.libs/gem_videoVLC.so'
I'm not sure what it means,... what I don't understand is it doesn't seen to be linked at all to libvlc:
Machiavel:Gem nix$ otool -L gem_videoVLC.so gem_videoVLC.so: /usr/lib/libstdc++.6.dylib (compatibility version 7.0.0, current version 7.9.0) /System/Library/Frameworks/QuickTime.framework/Versions/A/QuickTime (compatibility version 1.0.0, current version 1789.0.0) /System/Library/Frameworks/Carbon.framework/Versions/A/Carbon (compatibility version 2.0.0, current version 152.0.0) /System/Library/Frameworks/Cocoa.framework/Versions/A/Cocoa (compatibility version 1.0.0, current version 15.0.0) /System/Library/Frameworks/AGL.framework/Versions/A/AGL (compatibility version 1.0.0, current version 1.0.0) /usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current version 125.2.11) /usr/lib/libz.1.dylib (compatibility version 1.0.0, current version 1.2.3)
libvlc is only appearing in the search path of the library loading:
Machiavel:Gem nix$ otool -l gem_videoVLC.so [...] Load command 14 cmd LC_RPATH cmdsize 68 path /Applications/VLC.app/Contents/MacOS/lib/libvlc.dylib (offset 12)
any idea? I'm copying the plugins and the Gem.pd_darwin inside Pd-extended extra/Gem path if that matters. thx, n
GEM-dev mailing list GEM-dev@iem.at http://lists.puredata.info/listinfo/gem-dev
-- ____________________ m.e.grimm | m.f.a | ed.m. megrimm@gmail.com _________________________________
GEM-dev mailing list GEM-dev@iem.at http://lists.puredata.info/listinfo/gem-dev
http://at.or.at/hans/
I am actually proposing the opposite renaming. I am assuming that the VLC plugin is useless without VLC itself. I see no need to include libvlc in Gem if videoVLC can use the libvlc included in the VLC.app. Therefore, gem_videoVLC.so should link against /Applications/VLC.app/Contents/MacOS/lib/libvlc.5.dylib.
I couldn't see what in the Gem build system is changing the lib path to @loader_path/lib/libvlc.5.dylib. For most libs, that makes sense, but probably not here.
But for Mark, this should fix his issue:
install_name_tool -change \ @loader_path/lib/libvlc.5.dylib \ /Applications/VLC.app/Contents/MacOS/lib/libvlc.5.dylib \ gem_videoVLC.so
.hc
On Apr 4, 2012, at 12:19 PM, Nicolas Montgermont wrote:
no,
you need to redefine the reference of the library, in the directory of your plugin:
install_name_tool -change /Applications/VLC.app/Contents/MacOS/lib/libvlc.5.dylib @loader_path/lib/libvlc.5.dylib gem_videoVLC.so
should work, I'm not sure of the order, see explanations here for example: http://qin.laya.com/tech_coding_help/dylib_linking.html
any idea for the problem in my case?
n Le 04/04/12 16:43, m.e.grimm a écrit :
hey hans...
are you talking about configuring Gem with something like this:
CPPFLAGS=-I/Applications/VLC.app/Contents/MacOS/include LDFLAGS=-L/Applications/VLC.app/Contents/MacOS/lib/ ./configure --with-pd=/Applications/Pd-extended.app/Contents/Resources/include/pd/ --enable-fat-binary=x86_64 --with-ftgl-includes=/sw/include/ --with-libvlc-includes=-I/Applications/VLC.app/Contents/MacOS/include --with-libvlc-libs=-L/Applications/VLC.app/Contents/MacOS/lib
because when I do so I get the same @loader_path/lib/libvlc.5.dylib
m
On Wed, Apr 4, 2012 at 9:58 AM, Hans-Christoph Steinerhans@at.or.at wrote:
@loader_path is where the plugin was loaded from, so in your case: /Users/megrimm/Library/Pd/Gem/plugins/videoVLC/.libs/
That means its looking for libvlc here: /Users/megrimm/Library/Pd/Gem/plugins/videoVLC/.libs/lib/libvlc.5.dylib
On Mac OS X, the thing to do is to link against the libvlc included in the VLC app.Then anyone who wants to use the VLC plugin for Gem just installs the normal VLC app. You can find that here: /Applications/VLC.app/Contents/MacOS/lib/
That would mean adding -I/Applications/VLC.app/Contents/MacOS/include to CPPFLAGS and -L/Applications/VLC.app/Contents/MacOS/lib/ to LDFLAGS for the build. IMHO, the Gem build system would do that when it builds the VLC plugin on Mac OS X.
.hc
On Apr 4, 2012, at 8:40 AM, m.e.grimm wrote:
hey nicolas
i reproduced what you did and also ended up with the gem_videoVLC.so plugin, though on x86_64, with "[pix_video]: no video backends found!".
I am also getting: library loading returned: dlerror 'dlopen(./gem_videoVLC.so, 2): Library not loaded: @loader_path/lib/libvlc.5.dylib Referenced from: /Users/megrimm/Library/Pd/Gem/plugins/videoVLC/.libs/gem_videoVLC.so Reason: image not found'
though i differ with you in running otool -l gem_videoVLC.so: Load command 12 cmd LC_LOAD_DYLIB cmdsize 56 name @loader_path/lib/libvlc.5.dylib (offset 24) time stamp 2 Wed Dec 31 19:00:02 1969 current version 9.0.0 compatibility version 9.0.0
maybe we can figure this out today. let me know what you find out. seems to just not be finding libvlc.5.dylib and thats all....
cheers m
On Wed, Apr 4, 2012 at 3:56 AM, Nicolas Montgermont nicolas_montgermont@yahoo.fr wrote:
Le 03/04/12 22:45, IOhannes m zmölnig a écrit :
$ cd /path/to/Gem $ LD_LIBRARY_PATH=/Applications/VLC.app/Contents/MacOS/lib pd -lib Gem
The log is the same with or without the LD_LIBRARY_PATH, it is:
Machiavel:Gem nix$ LD_LIBRARY_PATH=/Applications/VLC.app/Contents/MacOS/lib /Applications/Pd-extended.app/Contents/MacOS/Pd-extended [...] load plugins 'video' in './' pattern : ./gem_video*.so dylib loading file './gem_videoDarwin.so'! dylib loading file './gem_videoVLC.so'! library loading returned: dlerror 'dlopen(./gem_videoVLC.so, 2): Symbol not found: _libvlc_media_add_option Referenced from: /Users/nix/github/Gem/plugins/videoVLC/.libs/gem_videoVLC.so Expected in: flat namespace in /Users/nix/github/Gem/plugins/videoVLC/.libs/gem_videoVLC.so'
I'm not sure what it means,... what I don't understand is it doesn't seen to be linked at all to libvlc:
Machiavel:Gem nix$ otool -L gem_videoVLC.so gem_videoVLC.so: /usr/lib/libstdc++.6.dylib (compatibility version 7.0.0, current version 7.9.0) /System/Library/Frameworks/QuickTime.framework/Versions/A/QuickTime (compatibility version 1.0.0, current version 1789.0.0) /System/Library/Frameworks/Carbon.framework/Versions/A/Carbon (compatibility version 2.0.0, current version 152.0.0) /System/Library/Frameworks/Cocoa.framework/Versions/A/Cocoa (compatibility version 1.0.0, current version 15.0.0) /System/Library/Frameworks/AGL.framework/Versions/A/AGL (compatibility version 1.0.0, current version 1.0.0) /usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current version 125.2.11) /usr/lib/libz.1.dylib (compatibility version 1.0.0, current version 1.2.3)
libvlc is only appearing in the search path of the library loading:
Machiavel:Gem nix$ otool -l gem_videoVLC.so [...] Load command 14 cmd LC_RPATH cmdsize 68 path /Applications/VLC.app/Contents/MacOS/lib/libvlc.dylib (offset 12)
any idea? I'm copying the plugins and the Gem.pd_darwin inside Pd-extended extra/Gem path if that matters. thx, n
GEM-dev mailing list GEM-dev@iem.at http://lists.puredata.info/listinfo/gem-dev
-- ____________________ m.e.grimm | m.f.a | ed.m. megrimm@gmail.com _________________________________
GEM-dev mailing list GEM-dev@iem.at http://lists.puredata.info/listinfo/gem-dev
http://at.or.at/hans/
----------------------------------------------------------------------------
There is no way to peace, peace is the way. -A.J. Muste
got it... yes worked.... i get:
dylib loading file './gem_videoVLC.so'!
now though i get:
[pix_video]: backend #0='vlc' : vlc GLEW version 1.5.4 [pix_video]: no valid video backend found
hmmm ?
On Wed, Apr 4, 2012 at 12:46 PM, Hans-Christoph Steiner hans@at.or.at wrote:
I am actually proposing the opposite renaming. I am assuming that the VLC plugin is useless without VLC itself. I see no need to include libvlc in Gem if videoVLC can use the libvlc included in the VLC.app. Therefore, gem_videoVLC.so should link against /Applications/VLC.app/Contents/MacOS/lib/libvlc.5.dylib.
I couldn't see what in the Gem build system is changing the lib path to @loader_path/lib/libvlc.5.dylib. For most libs, that makes sense, but probably not here.
But for Mark, this should fix his issue:
install_name_tool -change \ @loader_path/lib/libvlc.5.dylib \ /Applications/VLC.app/Contents/MacOS/lib/libvlc.5.dylib \ gem_videoVLC.so
.hc
On Apr 4, 2012, at 12:19 PM, Nicolas Montgermont wrote:
no,
you need to redefine the reference of the library, in the directory of your plugin:
install_name_tool -change /Applications/VLC.app/Contents/MacOS/lib/libvlc.5.dylib @loader_path/lib/libvlc.5.dylib gem_videoVLC.so
should work, I'm not sure of the order, see explanations here for example: http://qin.laya.com/tech_coding_help/dylib_linking.html
any idea for the problem in my case?
n Le 04/04/12 16:43, m.e.grimm a écrit :
hey hans...
are you talking about configuring Gem with something like this:
CPPFLAGS=-I/Applications/VLC.app/Contents/MacOS/include LDFLAGS=-L/Applications/VLC.app/Contents/MacOS/lib/ ./configure --with-pd=/Applications/Pd-extended.app/Contents/Resources/include/pd/ --enable-fat-binary=x86_64 --with-ftgl-includes=/sw/include/ --with-libvlc-includes=-I/Applications/VLC.app/Contents/MacOS/include --with-libvlc-libs=-L/Applications/VLC.app/Contents/MacOS/lib
because when I do so I get the same @loader_path/lib/libvlc.5.dylib
m
On Wed, Apr 4, 2012 at 9:58 AM, Hans-Christoph Steinerhans@at.or.at wrote:
@loader_path is where the plugin was loaded from, so in your case: /Users/megrimm/Library/Pd/Gem/plugins/videoVLC/.libs/
That means its looking for libvlc here: /Users/megrimm/Library/Pd/Gem/plugins/videoVLC/.libs/lib/libvlc.5.dylib
On Mac OS X, the thing to do is to link against the libvlc included in the VLC app.Then anyone who wants to use the VLC plugin for Gem just installs the normal VLC app. You can find that here: /Applications/VLC.app/Contents/MacOS/lib/
That would mean adding -I/Applications/VLC.app/Contents/MacOS/include to CPPFLAGS and -L/Applications/VLC.app/Contents/MacOS/lib/ to LDFLAGS for the build. IMHO, the Gem build system would do that when it builds the VLC plugin on Mac OS X.
.hc
On Apr 4, 2012, at 8:40 AM, m.e.grimm wrote:
hey nicolas
i reproduced what you did and also ended up with the gem_videoVLC.so plugin, though on x86_64, with "[pix_video]: no video backends found!".
I am also getting: library loading returned: dlerror 'dlopen(./gem_videoVLC.so, 2): Library not loaded: @loader_path/lib/libvlc.5.dylib Referenced from: /Users/megrimm/Library/Pd/Gem/plugins/videoVLC/.libs/gem_videoVLC.so Reason: image not found'
though i differ with you in running otool -l gem_videoVLC.so: Load command 12 cmd LC_LOAD_DYLIB cmdsize 56 name @loader_path/lib/libvlc.5.dylib (offset 24) time stamp 2 Wed Dec 31 19:00:02 1969 current version 9.0.0 compatibility version 9.0.0
maybe we can figure this out today. let me know what you find out. seems to just not be finding libvlc.5.dylib and thats all....
cheers m
On Wed, Apr 4, 2012 at 3:56 AM, Nicolas Montgermont nicolas_montgermont@yahoo.fr wrote:
Le 03/04/12 22:45, IOhannes m zmölnig a écrit :
> $ cd /path/to/Gem > $ LD_LIBRARY_PATH=/Applications/VLC.app/Contents/MacOS/lib pd -lib Gem > The log is the same with or without the LD_LIBRARY_PATH, it is:
Machiavel:Gem nix$ LD_LIBRARY_PATH=/Applications/VLC.app/Contents/MacOS/lib /Applications/Pd-extended.app/Contents/MacOS/Pd-extended [...] load plugins 'video' in './' pattern : ./gem_video*.so dylib loading file './gem_videoDarwin.so'! dylib loading file './gem_videoVLC.so'! library loading returned: dlerror 'dlopen(./gem_videoVLC.so, 2): Symbol not found: _libvlc_media_add_option Referenced from: /Users/nix/github/Gem/plugins/videoVLC/.libs/gem_videoVLC.so Expected in: flat namespace in /Users/nix/github/Gem/plugins/videoVLC/.libs/gem_videoVLC.so'
I'm not sure what it means,... what I don't understand is it doesn't seen to be linked at all to libvlc:
Machiavel:Gem nix$ otool -L gem_videoVLC.so gem_videoVLC.so: /usr/lib/libstdc++.6.dylib (compatibility version 7.0.0, current version 7.9.0) /System/Library/Frameworks/QuickTime.framework/Versions/A/QuickTime (compatibility version 1.0.0, current version 1789.0.0) /System/Library/Frameworks/Carbon.framework/Versions/A/Carbon (compatibility version 2.0.0, current version 152.0.0) /System/Library/Frameworks/Cocoa.framework/Versions/A/Cocoa (compatibility version 1.0.0, current version 15.0.0) /System/Library/Frameworks/AGL.framework/Versions/A/AGL (compatibility version 1.0.0, current version 1.0.0) /usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current version 125.2.11) /usr/lib/libz.1.dylib (compatibility version 1.0.0, current version 1.2.3)
libvlc is only appearing in the search path of the library loading:
Machiavel:Gem nix$ otool -l gem_videoVLC.so [...] Load command 14 cmd LC_RPATH cmdsize 68 path /Applications/VLC.app/Contents/MacOS/lib/libvlc.dylib (offset 12)
any idea? I'm copying the plugins and the Gem.pd_darwin inside Pd-extended extra/Gem path if that matters. thx, n
GEM-dev mailing list GEM-dev@iem.at http://lists.puredata.info/listinfo/gem-dev
-- ____________________ m.e.grimm | m.f.a | ed.m. megrimm@gmail.com _________________________________
GEM-dev mailing list GEM-dev@iem.at http://lists.puredata.info/listinfo/gem-dev
There is no way to peace, peace is the way. -A.J. Muste
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1
On 2012-04-04 20:16, m.e.grimm wrote:
got it... yes worked.... i get:
dylib loading file './gem_videoVLC.so'!
now though i get:
[pix_video]: backend #0='vlc' : vlc GLEW version 1.5.4 [pix_video]: no valid video backend found
you have to specify a valid "device" that VLC can open. unlike other video-backends, there is no "default" capture device for vlc. try [device screen://(
fgmasdr IOhannes
try [device screen://(
i used [device qtcapture://( which works. just the image is terribly blue-ish (see attached screen grab) and there is a delay....
but it works so thats good! seems like the 64 bit gem is moving along...
m
On Wed, Apr 4, 2012 at 2:46 PM, IOhannes m zmoelnig zmoelnig@iem.at wrote:
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1
On 2012-04-04 20:16, m.e.grimm wrote:
got it... yes worked.... i get:
dylib loading file './gem_videoVLC.so'!
now though i get:
[pix_video]: backend #0='vlc' : vlc GLEW version 1.5.4 [pix_video]: no valid video backend found
you have to specify a valid "device" that VLC can open. unlike other video-backends, there is no "default" capture device for vlc. try [device screen://(
fgmasdr IOhannes -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.12 (GNU/Linux) Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/
iEYEARECAAYFAk98lwwACgkQkX2Xpv6ydvQvOwCgutJHEFWavMCf0BeaPahFCZ3g 8xgAn2PBNGx3Qz64XreUeK/lrm2mcjWc =fVdi -----END PGP SIGNATURE-----
GEM-dev mailing list GEM-dev@iem.at http://lists.puredata.info/listinfo/gem-dev
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1
On 2012-04-05 04:21, m.e.grimm wrote:
try [device screen://(
i used [device qtcapture://( which works. just the image is terribly blue-ish (see attached screen grab)
i guess we have to fix that colorspace thing on OSX once and for all...
and there is a delay....
i think we cannot do much about _that_. i found the delay to make live video input quite unusable on w32 (that is: if you want to do something reactive). i think this is less a problem of Gem than a problem of VLC itself (at least: i get a terrible delay when opening a video-device in the VLC application as well, e.g. on w32)
gmasr IOhannes
i guess we have to fix that colorspace thing on OSX once and for all...
yeah that would be nice. the colorspace for each of the plugins to get a normal image seem to all be different too. i cant locate the colorspace for videoVLC at the moment because it would be too time consuming for me to have to run:
install_name_tool -change @loader_path/lib/libvlc.5.dylib /Applications/VLC.app/Contents/MacOS/lib/libvlc.5.dylib gem_videoVLC.so
after each time i compile if im just making adjustments to colors on trial and error basis ... which is basicly what i did on imageMAGICK and filmMERLIN.
as hans said though: "useless without VLC itself. I see no need to include libvlc in Gem if videoVLC can use the libvlc included in the VLC.app."
and i wonder why NOT just include libvlc in Gem? hans suggestion seems to make total sense. but at the same time just including libvlc doesnt seem to be a big deal (or is it?) and then there would be no need to make a special modification to Gem to accommodate videoVLC looking to /Applications/VLC.app/Contents/MacOS/lib/libvlc.5.dylib instead of @loader_path/lib/libvlc.5.dylib...
i guess whatever is easier? or whatever is cleaner? now that im thinking about it adding libvlc to gem seems to be the cleaner solution but maybe im wrong... IDK.
On Thu, Apr 5, 2012 at 3:37 AM, IOhannes m zmoelnig zmoelnig@iem.at wrote:
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1
On 2012-04-05 04:21, m.e.grimm wrote:
try [device screen://(
i used [device qtcapture://( which works. just the image is terribly blue-ish (see attached screen grab)
i guess we have to fix that colorspace thing on OSX once and for all...
and there is a delay....
i think we cannot do much about _that_. i found the delay to make live video input quite unusable on w32 (that is: if you want to do something reactive). i think this is less a problem of Gem than a problem of VLC itself (at least: i get a terrible delay when opening a video-device in the VLC application as well, e.g. on w32)
gmasr IOhannes
-----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.12 (GNU/Linux) Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/
iEYEARECAAYFAk99S8EACgkQkX2Xpv6ydvR1EQCgoFau4C6+dTxa/SCvbQTRyA5R MXQAn3F4NHhvEKGf5VAvjKItC2QWEXF6 =Z1Lu -----END PGP SIGNATURE-----
GEM-dev mailing list GEM-dev@iem.at http://lists.puredata.info/listinfo/gem-dev
Whatever works, really. In my experience, I find it useful to always try to simplify things. The less details there are, the less likely one of them will come back to haunt you.
A default build would not have the @loader_path, there is something in the Gem build system that is doing that. It makes sense for most plugins to do that. I thought it might be easy to have a separate setting for the gem_videoVLC.so since the plugins seem to have somewhat separate build systems.
Including the libvlc into Gem could mean version incompatibilities with Gem's libvlc and the installed VLC.app. On the other hand, always using VLC.app's libvlc could leave to version incompatibilities between Gem and VLC.app's libvlc.
I don't know the answer to this question, I think the key is to find out which will have the most stable interface and use that one. Is it the interface between libvlc and VLC.app? Then then include libvlc in Gem. Is int libvlc's API? then use the libvlc in VLC.app.
.hc
On Apr 5, 2012, at 10:15 AM, m.e.grimm wrote:
i guess we have to fix that colorspace thing on OSX once and for all...
yeah that would be nice. the colorspace for each of the plugins to get a normal image seem to all be different too. i cant locate the colorspace for videoVLC at the moment because it would be too time consuming for me to have to run:
install_name_tool -change @loader_path/lib/libvlc.5.dylib /Applications/VLC.app/Contents/MacOS/lib/libvlc.5.dylib gem_videoVLC.so
after each time i compile if im just making adjustments to colors on trial and error basis ... which is basicly what i did on imageMAGICK and filmMERLIN.
as hans said though: "useless without VLC itself. I see no need to include libvlc in Gem if videoVLC can use the libvlc included in the VLC.app."
and i wonder why NOT just include libvlc in Gem? hans suggestion seems to make total sense. but at the same time just including libvlc doesnt seem to be a big deal (or is it?) and then there would be no need to make a special modification to Gem to accommodate videoVLC looking to /Applications/VLC.app/Contents/MacOS/lib/libvlc.5.dylib instead of @loader_path/lib/libvlc.5.dylib...
i guess whatever is easier? or whatever is cleaner? now that im thinking about it adding libvlc to gem seems to be the cleaner solution but maybe im wrong... IDK.
On Thu, Apr 5, 2012 at 3:37 AM, IOhannes m zmoelnig zmoelnig@iem.at wrote:
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1
On 2012-04-05 04:21, m.e.grimm wrote:
try [device screen://(
i used [device qtcapture://( which works. just the image is terribly blue-ish (see attached screen grab)
i guess we have to fix that colorspace thing on OSX once and for all...
and there is a delay....
i think we cannot do much about _that_. i found the delay to make live video input quite unusable on w32 (that is: if you want to do something reactive). i think this is less a problem of Gem than a problem of VLC itself (at least: i get a terrible delay when opening a video-device in the VLC application as well, e.g. on w32)
gmasr IOhannes
-----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.12 (GNU/Linux) Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/
iEYEARECAAYFAk99S8EACgkQkX2Xpv6ydvR1EQCgoFau4C6+dTxa/SCvbQTRyA5R MXQAn3F4NHhvEKGf5VAvjKItC2QWEXF6 =Z1Lu -----END PGP SIGNATURE-----
GEM-dev mailing list GEM-dev@iem.at http://lists.puredata.info/listinfo/gem-dev
-- ____________________ m.e.grimm | m.f.a | ed.m. megrimm@gmail.com _________________________________
GEM-dev mailing list GEM-dev@iem.at http://lists.puredata.info/listinfo/gem-dev
----------------------------------------------------------------------------
“We must become the change we want to see. - Mahatma Gandhi
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1
On 2012-04-04 15:58, Hans-Christoph Steiner wrote:
That would mean adding -I/Applications/VLC.app/Contents/MacOS/include to CPPFLAGS and -L/Applications/VLC.app/Contents/MacOS/lib/ to LDFLAGS for the build. IMHO, the Gem build system would do that when it builds the VLC plugin on Mac OS X.
yes, but i don't think that Gem should do that automatically for you. it should be possible though, to simply specify where VLC resides.
fgmasdr IOhannes
On Apr 4, 2012, at 2:49 PM, IOhannes m zmoelnig wrote:
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1
On 2012-04-04 15:58, Hans-Christoph Steiner wrote:
That would mean adding -I/Applications/VLC.app/Contents/MacOS/include to CPPFLAGS and -L/Applications/VLC.app/Contents/MacOS/lib/ to LDFLAGS for the build. IMHO, the Gem build system would do that when it builds the VLC plugin on Mac OS X.
yes, but i don't think that Gem should do that automatically for you. it should be possible though, to simply specify where VLC resides.
./configure build systems normally look for the various libraries that the given project needs. On GNU/Linux, this is easy since ./configure mostly just has to look in /usr and maybe /usr/local. Mac OS X is sadly not as organized, but there are some standards, like putting apps into /Applications.
So ./configure finding /Applications/VLC.app/Contents/MacOS/lib/libvlc.dylib, then adding -I/Applications/VLC.app/Contents/MacOS/include to CPPFLAGS and -L/Applications/VLC.app/Contents/MacOS/lib/ to LDFLAGS make a lot of sense. It could also look in ~/Applications and /sw/Applications if it needed to be thorough.
.hc
----------------------------------------------------------------------------
"[T]he greatest purveyor of violence in the world today [is] my own government." - Martin Luther King, Jr.