From: Stuart L. <red...@ge...> - 2005-09-24 04:28:10
|
Hi All, I only recently heard about GPLFlash, and given the troubles I've had with Macromedia's plugin[1], I figured I'd ditch their proprietry plugin and go for the opensource alternative. There's a couple of issues I'm having at the moment though. (1) The flash plugin doesn't appear to be loaded by the browser. By default, the flashplayer plugin gets installed as /usr/lib/mozilla/plugins/libnpflash.so. So I simply symlink this file into my ~/.mozilla/plugins folder, in an effort to get Firefox to recognise it. e.g.: > (14:02) stuartl@beast ~ $ ln -sv /usr/lib/mozilla/plugins/libnpflash.so .mozilla/plugins > create symbolic link `.mozilla/plugins/libnpflash.so' to `/usr/lib/mozilla/plugins/libnpflash.so' > (14:03) stuartl@beast ~ $ ls -l .mozilla/plugins > total 392 > lrwxrwxrwx 1 stuartl users 62 Sep 16 20:37 libjavaplugin_oji.so -> /opt/sun-jdk-1.5.0_04/jre/plugin/i386/ns7/libjavaplugin_oji.so > lrwxrwxrwx 1 stuartl users 38 Sep 24 14:03 libnpflash.so -> /usr/lib/mozilla/plugins/libnpflash.so > -rw-r--r-- 1 stuartl users 399228 Sep 3 22:19 npflash.so > (14:03) stuartl@beast ~ $ file /usr/lib/mozilla/plugins/libnpflash.so > /usr/lib/mozilla/plugins/libnpflash.so: ELF 32-bit LSB shared object, Intel 80386, version 1 (SYSV), not stripped > (14:03) stuartl@beast ~ $ However, on startup of Firefox, it doesn't appear in the listing from about:plugins, and doesn't fire up when I view a flash movie. I've tried this in both Konqueror 3.4.1 and Firefox 1.0.6 on x86, as well as Konqueror 3.3.2 on MIPS n32. Starting up Firefox, I notice the following: > (14:03) stuartl@beast ~ $ /opt/firefox/firefox > LoadPlugin: failed to initialize shared library /usr/lib/nsbrowser/plugins/libnpflash.so [/usr/lib/nsbrowser/plugins/libnpflash.so: undefined symbol: NPP_Print] > LoadPlugin: failed to initialize shared library /home/stuartl/.mozilla/plugins/npflash.so [/home/stuartl/.mozilla/plugins/npflash.so: undefined symbol: __dso_handle] > LoadPlugin: failed to initialize shared library /opt/firefox/plugins/libnpflash.so [/opt/firefox/plugins/libnpflash.so: undefined symbol: NPP_Print] ...which possibly explains it not being loaded. For the record, I compiled this with the following version of GCC: > (14:03) stuartl@beast ~ $ gcc --version > gcc (GCC) 3.3.6 (Gentoo Hardened 3.3.6, ssp-3.3.6-1.0, pie-8.7.8) > Copyright (C) 2003 Free Software Foundation, Inc. > This is free software; see the source for copying conditions. There is NO > warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. using pretty mundane CFLAGS/CXXFLAGS (-march=i386 -g).. (2) standalone `flashplayer` simply aborts before playback I've tried this inside gdb and outside with varying results... > (14:10) stuartl@beast ~ $ gdb --args flashplayer superfly.swf play > GNU gdb 6.0 > Copyright 2003 Free Software Foundation, Inc. > GDB is free software, covered by the GNU General Public License, and you are > welcome to change it and/or distribute copies of it under certain conditions. > Type "show copying" to see the conditions. > There is absolutely no warranty for GDB. Type "show warranty" for details. > This GDB was configured as "i686-pc-linux-gnu"...Using host libthread_db library "/lib/libthread_db.so.1". > > (gdb) run > Starting program: /usr/bin/flashplayer superfly.swf play > Decode Successfull > > Program received signal SIGFPE, Arithmetic exception. > 0x4110ebfc in ?? () > (gdb) Unfortunately the backtrace is next to useless... I might try again after I re-merge some libs with debugging symbols. Outside of gdb, I did manage to get it to play, but it soon segfaults: > (14:13) stuartl@beast ~ $ flashplayer superfly.swf play > Decode Successfull > HARDWARE: Stencil depth :8 > HARDWARE: GL_ARB_multisample -> ok > HARDWARE: NO GL_ARB_fragment_shader -> Emulate pixel shader > +Create Sound manager > +Shape _nonAS:1TagSpriteId:0 > +Shape _nonAS:2TagSpriteId:0 > +Shape _nonAS:3TagSpriteId:0 > +Shape _nonAS:4TagSpriteId:0 > +Shape _nonAS:5TagSpriteId:0 > +Shape _nonAS:6TagSpriteId:0 > +Shape _nonAS:7TagSpriteId:0 > +Shape _nonAS:8TagSpriteId:0 > +Shape _nonAS:9TagSpriteId:0 > +Shape _nonAS:10TagSpriteId:0 > [0x803c05f0]Action: 8a ActionWaitForFrame > [0x803c05f6]Action: 81 GotoFrame 19 > [0x803c05fb]Action: 6 doActionPlay on _global (0x80b43668) > +Shape _nonAS:11TagSpriteId:0 > +Shape _nonAS:12TagSpriteId:0 > +Shape _nonAS:13TagSpriteId:0 > +Shape _nonAS:14TagSpriteId:0 > +Shape _nonAS:15TagSpriteId:0 > +Shape _nonAS:16TagSpriteId:0 > +Shape _nonAS:17TagSpriteId:0 > +Shape _nonAS:18TagSpriteId:0 > +Shape _nonAS:19TagSpriteId:0 > +Shape _nonAS:20TagSpriteId:0 > +Shape _nonAS:21TagSpriteId:0 > +Shape _nonAS:22TagSpriteId:0 > +Shape _nonAS:23TagSpriteId:0 > +Shape _nonAS:24TagSpriteId:0 > +Shape _nonAS:25TagSpriteId:0 > +Shape _nonAS:26TagSpriteId:0 > +Shape _nonAS:28TagSpriteId:0 > +Shape _nonAS:29TagSpriteId:0 > +Shape _nonAS:30TagSpriteId:0 > +Button _nonAS:33 TagSpriteId:0 > [0x803e2228]Action: 7 doActionStop on _global > Fatal signal: Segmentation Fault (SDL Parachute Deployed) > (14:14) stuartl@beast ~ $ I'll keep tinkering here, but I'm getting closer. :-) (3) swf.hh gets misplaced. For whatever reason, swf.hh ends up in /. I have a patch that places this file in $PREFIX/include/gplflash2, which seems like a better home for it. http://dev.gentoo.org/~redhatter/misc/gplflash2-fix-misplaced-swf.hh.patch.gz I'd really like to see GPLFlash2 become a viable alternative to the Macromedia player, as not everybody running Linux can run their player. (AMD64 users are just one example) I have an ebuild that will possibly make it into Gentoo's portage tree in my devspace... http://dev.gentoo.org/~redhatter/misc/gplflash2-cvs-0.0.ebuild It's a long way from being acceptable to go into the tree, but it's good enough for testing. :-) Keep up the good work though. If there's any way I can help, let me know. I'm in #gplflash on a reasonably regular basis these days. Regards, -- ____ _ Stuart Longland (a.k.a Redhatter) / _ \ ___ ___ __| |__ __ __ Gentoo Linux/MIPS Cobalt and Docs - (_) \ / \ ; \(__ __)/ \ / \ Developer \ // O _| / /\ \ | | | /\ | /\ | / / \ /__| / \ \ | | | \/ | \/ | (___/ \____/|_; |_| \_/ \__/ \__/ http://dev.gentoo.org/~redhatter 1. I run mozilla.org builds of Firefox. If the Flash plugin is installed, Firefox segfaults the moment I hit a site with Flash. |