mplayerplug-in fails to compile because several header files cannot be located. The files that cannot be found reside in /usr/lib/mozilla-firefox/include/xpcom, which is not included in a "-I" parameter to the compiler. Snippet of errors: i686-pc-linux-gnu-g++ -c -o npn_gate.o -Wall -march=k8 -msse3 -O2 -pipe -fno-ident -fomit-frame-pointer -DXP_UNIX -DMOZ_X11 -I/usr/lib/mozilla-firefox/include/java -I/usr/lib/mozilla-firefox/include/plug in -I/usr/include/nspr -I/usr/lib/mozilla-firefox/include -Iinclude -fPIC -I/usr/include/gtk-2.0 -I/usr/lib/gtk-2.0/include -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/in clude/glib-2.0 -I/usr/lib/glib-2.0/include -I/usr/include/freetype2 -I/usr/include/libpng12 -I/usr/include/gtk-2.0 -I/usr/lib/gtk-2.0/include -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pa ngo-1.0 -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include -I/usr/include/freetype2 -I/usr/include/libpng12 -pthread -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include -DGTK_ENABLED plugingate/npn_g ate.cpp In file included from Source/nsScriptablePeer.h:48, from Source/plugin.h:54, from Source/plugin.cpp:37: Source/nsIScriptableMplayerPlugin.h:10:25: error: nsISupports.h: No such file or directory In file included from Source/plugin.h:54, from Source/plugin.cpp:37: Source/nsScriptablePeer.h:49:26: error: nsIClassInfo.h: No such file or directory i686-pc-linux-gnu-g++ -c -o plugin-support.o -Wall -march=k8 -msse3 -O2 -pipe -fno-ident -fomit-frame-pointer -DXP_UNIX -DMOZ_X11 -I/usr/lib/mozilla-firefox/include/java -I/usr/lib/mozilla-firefox/includ e/plugin -I/usr/include/nspr -I/usr/lib/mozilla-firefox/include -Iinclude -fPIC -I/usr/include/gtk-2.0 -I/usr/lib/gtk-2.0/include -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pango-1.0 -I/ usr/include/glib-2.0 -I/usr/lib/glib-2.0/include -I/usr/include/freetype2 -I/usr/include/libpng12 -I/usr/include/gtk-2.0 -I/usr/lib/gtk-2.0/include -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/incl ude/pango-1.0 -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include -I/usr/include/freetype2 -I/usr/include/libpng12 -pthread -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include -DGTK_ENABLED Source/pl ugin-support.cpp Source/plugin.cpp:38:31: error: nsIServiceManager.h: No such file or directory Source/plugin.cpp:39:23: error: nsIMemory.h: No such file or directory Source/plugin.cpp:40:74: error: nsISupportsUtils.h: No such file or directory include/pluginbase.h:55: warning: ‘class nsPluginInstanceBase’ has virtual functions but non-virtual destructor Reproducible: Always Steps to Reproduce: 1. Emerge mozilla-firefox-2.0.0.2 2. Attempt to emerge mplayerplug-in-3.35 3. Notice the errors Expected Results: Install without error emerge --info will be attached...
Portage 2.1.2-r11 (default-linux/x86/2006.1/desktop, gcc-4.1.2, glibc-2.5-r1, 2.6.19-gentoo-r5 i686) ================================================================= System uname: 2.6.19-gentoo-r5 i686 AMD Athlon(tm) 64 X2 Dual Core Processor 4400+ Gentoo Base System release 1.12.9 Timestamp of tree: Sat, 24 Feb 2007 15:50:01 +0000 distcc 2.18.3 i686-pc-linux-gnu (protocols 1 and 2) (default port 3632) [disabled] ccache version 2.4 [enabled] dev-java/java-config: 1.3.7, 2.0.31-r3 dev-lang/python: 2.4.4 dev-python/pycrypto: 2.0.1-r5 dev-util/ccache: 2.4-r6 sys-apps/sandbox: 1.2.18.1 sys-devel/autoconf: 2.13, 2.61 sys-devel/automake: 1.4_p6, 1.5, 1.6.3, 1.7.9-r1, 1.8.5-r3, 1.9.6-r2, 1.10 sys-devel/binutils: 2.17.50.0.12 sys-devel/gcc-config: 1.3.14 sys-devel/libtool: 1.5.23b virtual/os-headers: 2.6.20 ACCEPT_KEYWORDS="x86 ~x86" AUTOCLEAN="yes" CBUILD="i686-pc-linux-gnu" CFLAGS="-march=k8 -msse3 -O2 -pipe -fno-ident -fomit-frame-pointer" CHOST="i686-pc-linux-gnu" CONFIG_PROTECT="/etc /usr/share/X11/xkb /var/qmail/alias /var/qmail/control" CONFIG_PROTECT_MASK="/etc/env.d /etc/env.d/java/ /etc/gconf /etc/java-config/vms/ /etc/revdep-rebuild /etc/terminfo /etc/texmf/web2c" CXXFLAGS="-march=k8 -msse3 -O2 -pipe -fno-ident -fomit-frame-pointer" DISTDIR="/usr/portage/distfiles" FEATURES="autoconfig ccache distlocks metadata-transfer sandbox sfperms strict" GENTOO_MIRRORS="http://mirror.datapipe.net/gentoo http://gentoo.chem.wisc.edu/gentoo/ http://gentoo.mirrors.tds.net/gentoo ftp://gentoo.mirrors.pair.com/" LANG="en_US.UTF-8" LDFLAGS="-Wl,-O1 -Wl,--as-needed -Wl,--sort-common -Wl,--hash-style=both" LINGUAS="en" MAKEOPTS="-j3" PKGDIR="/usr/portage/packages" PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --delete-after --stats --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages --filter=H_**/files/digest-*" PORTAGE_TMPDIR="/var/tmp" PORTDIR="/usr/portage" PORTDIR_OVERLAY="/usr/local/portage /usr/portage/local/layman/toolchain_overlay" SYNC="rsync://apollo.clarkconnect.lan/gentoo-portage" USE="3dnow 3dnowext X Xaw3d a52 aac aalib accessibility alsa amr aotuv artworkextra asf bash-completion berkdb branding bzip2 cairo caps cddb cdinstall cdparanoia cdr cracklib crypt cups curl dbus dga divx djbfft dri dts dv dvd dvdr dvdread dvi eds emacs enca encode esd exif exo expat fam fbcon ffmpeg firefox flac foomaticdb fortran fpx ft galago gd gdbm gencertdaily ggi gif glibc-omitfp glitz glut gmedia gmp gnome gnutls gphoto2 gpm graphviz gs gstreamer gtk gtkhtml hal iconv idn imagemagick imlib ithreads java javascript jbig joystick jpeg jpeg2k keyring lcms libcaca libnotify live lm_sensors logrotate lzo mad midi mikmod mmap mmx mmxext mng modplug mods mono motif mozbranding mp3 mp4 mpeg msn musepack ncurses network nls nntp nptl nptlonly nsplugin numeric nvidia offensive ogg openal openexr opengl oss pam panel-plugin pcre pdf perl pic png ppds profile pulseaudio python qmail qmax quicktime readline real realmedia rle rogue rtc samba sdl shorten slang slp smp sndfile sox speex spell sse sse2 ssl startup-notification svg syslog t1lib tcl tcltk tcpd teamarena tetex textures tga theora threads thunar-vfs tiff tk toolbar tools truetype truetype-fonts type1-fonts unicode usb vcd videos vidix vim-with-x vorbis vorbis-psy win32codecs wmf wmp wxwindows x264 x86 xanim xatrix xcomposite xforms xine xml xorg xpm xscreensaver xslt xv xvid xvmc zlib" ALSA_CARDS="emu10k1" ALSA_PCM_PLUGINS="adpcm alaw asym copy dmix dshare dsnoop empty extplug file hooks iec958 ioplug ladspa lfloat linear meter mulaw multi null plug rate route share shm softvol" ELIBC="glibc" INPUT_DEVICES="joystick keyboard mouse evdev" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LINGUAS="en" USERLAND="GNU" VIDEO_CARDS="nvidia nv vesa" Unset: CTARGET, EMERGE_DEFAULT_OPTS, INSTALL_MASK, LC_ALL, PORTAGE_RSYNC_EXTRA_OPTS
Same problem with mplayerplug-in-3.31-r1.
That's because the pkgconfig file in firefox-2.0.0.2 has changed: --- mozilla-firefox-2.0.0.1/work/mozilla/build/unix/mozilla-plugin.pc.in 2005-04-22 18:11:13.000000000 +0100 +++ mozilla-firefox-2.0.0.2/work/mozilla/build/unix/mozilla-plugin.pc.in 2007-02-04 11:45:24.000000000 +0100 @@ -6,5 +6,5 @@ Name: Mozilla Plug-In API Description: Mozilla Plug-In API Version: %MOZILLA_VERSION% -Requires: %MOZ_APP_NAME%-xpcom = %MOZILLA_VERSION% +Requires: %NSPR_NAME% >= %NSPR_VERSION% Cflags: -I${includedir}/java -I${includedir}/plugin Is due to https://bugzilla.mozilla.org/show_bug.cgi?id=366113 , so i guess you should poke mplayerplug-in upstream :)
I've submitted a bug to the mplayerplug-in project. However, even if they fix it upstream, how will that help with earlier/current versions of the plug-in here in Gentoo?
Created attachment 111215 [details] mplayerplug-in-0.3.1_fx-2.0.0.2.patch This is a hackish way to do it. It's for 0.31. It seems that it compiles, dunno if it works. It should... With this we are obtaining the both CFLAGS from firefox-plugin.pc and firefox-xpcom.pc. Blame mozilla...
Bug on SourceForge: http://sourceforge.net/tracker/index.php?func=detail&aid=1668447&group_id=71239&atid=530623
Please see the SourceForge bug. The problem seems to be coming down to how the pkg-config files are set up in Gentoo.
(In reply to comment #7) > Please see the SourceForge bug. The problem seems to be coming down to how the > pkg-config files are set up in Gentoo. > As i said, look at the diff i posted in comment #3. Gentoo doesn't touch the pkgconfig files. The diff i posted is from the firefox source. Look at the mozilla bug, they said: "mozilla-plugin.pc should not depend in mozilla-xpcom.pc. Plugins should use mozilla-xpcom.pc directly." Although in this case, using mozilla-xpcom.pc fails with another error due to missing files. That is fixed using the patch i attached, which obtains both Cflags(that is, the -I variables) from mozilla-xpcom.pc and mozilla-plugin.pc. Tell mplayerplug-in upstream to blame mozilla, not us. We didn't touch anything.
(In reply to comment #8) > Tell mplayerplug-in upstream to blame mozilla, not us. We didn't touch > anything. > They acknowledged that in the sourceforge bug just minutes after you posted. ...They also posted a patch. *poke*
(In reply to comment #9) > (In reply to comment #8) > > > Tell mplayerplug-in upstream to blame mozilla, not us. We didn't touch > > anything. > > > > They acknowledged that in the sourceforge bug just minutes after you posted. > > ...They also posted a patch. > > *poke* > Actually, it was not long after my reply with Raul's info earlier today. :)
*** Bug 168498 has been marked as a duplicate of this bug. ***
Thanks for tracking this down. :) The fix is in CVS for both 3.31 and 3.35.