/include/plugin -I/usr/include/nspr -I/usr/lib64/seamonkey/include -I/usr/lib64/seamonkey/include/xpcom -I/usr/lib64/seamonkey/include/string -I/usr/lib64/seamonkey/include -march=native -O2 -pipe -fno-strict-aliasing -Iinclude -fPIC -D_REENTRANT -I/usr/include/gtk-2.0 -I/usr/lib64/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/lib64/glib-2.0/include -I/usr/include/freetype2 -I/usr/include/directfb -I/usr/include/libpng12 -I/usr/include/pixman-1 -D_REENTRANT -I/usr/include/gtk-2.0 -I/usr/lib64/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/lib64/glib-2.0/include -I/usr/include/freetype2 -I/usr/include/directfb -I/usr/include/libpng12 -I/usr/include/pixman-1 -pthread -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include -DGTK_ENABLED -Wl,-O1 -lX11 -lX11 -lXt -lX11 -lSM -lICE -lXext -lX11 -lXpm -lX11 -lgtk-x11-2.0 -lgdk-x11-2.0 -latk-1.0 -lgio-2.0 -lpangoft2-1.0 -lgdk_pixbuf-2.0 -lpangocairo-1.0 -lcairo -lpango-1.0 -lfreetype -lz -lfontconfig -lgobject-2.0 -lgmodule-2.0 -lglib-2.0 -lgtk-x11-2.0 -lgdk-x11-2.0 -latk-1.0 -lgio-2.0 -lpangoft2-1.0 -lgdk_pixbuf-2.0 -lpangocairo-1.0 -lcairo -lpango-1.0 -lfreetype -lz -lfontconfig -lgobject-2.0 -lgmodule-2.0 -lglib-2.0 -pthread -lgthread-2.0 -lrt -lglib-2.0 /usr/lib/gcc/x86_64-pc-linux-gnu/4.3.1/../../../../x86_64-pc-linux-gnu/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-pc-linux-gnu/4.3.1/../../../libgio-2.0.so when searching for -lgio-2.0 /usr/lib/gcc/x86_64-pc-linux-gnu/4.3.1/../../../../x86_64-pc-linux-gnu/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-pc-linux-gnu/4.3.1/../../../libgio-2.0.a when searching for -lgio-2.0 /usr/lib/gcc/x86_64-pc-linux-gnu/4.3.1/../../../../x86_64-pc-linux-gnu/bin/ld: skipping incompatible /usr/lib/libgio-2.0.so when searching for -lgio-2.0 /usr/lib/gcc/x86_64-pc-linux-gnu/4.3.1/../../../../x86_64-pc-linux-gnu/bin/ld: skipping incompatible /usr/lib/libgio-2.0.a when searching for -lgio-2.0 /usr/lib/gcc/x86_64-pc-linux-gnu/4.3.1/../../../../x86_64-pc-linux-gnu/bin/ld: cannot find -lgio-2.0 collect2: ld returned 1 exit status make: *** [mplayerplug-in] Error 1 make: *** Waiting for unfinished jobs.... * * ERROR: net-www/mplayerplug-in-3.55 failed. * Call stack: * ebuild.sh, line 49: Called src_compile * environment, line 2930: Called die * The specific snippet of code: * emake || die "emake failed"; * The die message: * emake failed * * If you need support, post the topmost build error, and the call stack if relevant. * A complete build log is located at '/var/tmp/portage/net-www/mplayerplug-in-3.55/temp/build.log'. * The ebuild environment file is located at '/var/tmp/portage/net-www/mplayerplug-in-3.55/temp/environment'. * >>> Failed to emerge net-www/mplayerplug-in-3.55, Log file: >>> '/var/tmp/portage/net-www/mplayerplug-in-3.55/temp/build.log' * GNU info directory index is up-to-date. Linux1 billydv # Reproducible: Always emerge --info Portage 2.2_rc11 (default/linux/amd64/2008.0/desktop, gcc-4.3.1, glibc-2.8_p20080602-r0, 2.6.26-gentoo-r1 x86_64) ================================================================= System uname: Linux-2.6.26-gentoo-r1-x86_64-AMD_Athlon-tm-_64_X2_Dual_Core_Processor_4200+-with-glibc2.2.5 Timestamp of tree: Sun, 28 Sep 2008 21:00:01 +0000 app-shells/bash: 3.2_p39 dev-java/java-config: 1.3.7, 2.1.6-r1 dev-lang/python: 2.5.2-r8 dev-python/pycrypto: 2.0.1-r6 sys-apps/baselayout: 2.0.0 sys-apps/openrc: 0.2.5 sys-apps/sandbox: 1.2.18.1-r3 sys-devel/autoconf: 2.13, 2.63 sys-devel/automake: 1.4_p6, 1.5, 1.7.9-r1, 1.8.5-r3, 1.9.6-r2, 1.10.1-r1 sys-devel/binutils: 2.18-r3 sys-devel/gcc-config: 1.4.0-r4 sys-devel/libtool: 2.2.6a virtual/os-headers: 2.6.26 ACCEPT_KEYWORDS="amd64 ~amd64" CBUILD="x86_64-pc-linux-gnu" CFLAGS="-march=native -O2 -pipe" CHOST="x86_64-pc-linux-gnu" CONFIG_PROTECT="/etc /usr/kde/3.5/env /usr/kde/3.5/share/config /usr/kde/3.5/shutdown /usr/kde/4.0/env /usr/kde/4.0/share/config /usr/kde/4.0/shutdown /usr/share/config /var/bind /var/lib/hsqldb" CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/env.d /etc/env.d/java/ /etc/fonts/fonts.conf /etc/gconf /etc/gentoo-release /etc/revdep-rebuild /etc/splash /etc/terminfo /etc/texmf/web2c /etc/udev/rules.d" CXXFLAGS="-march=native -O2 -pipe" DISTDIR="/usr/portage/distfiles" FEATURES="buildpkg distlocks fixpackages metadata-transfer parallel-fetch preserve-libs protect-owned sandbox sfperms strict unmerge-orphans userfetch" GENTOO_MIRRORS="http://distfiles.gentoo.org http://distro.ibiblio.org/pub/linux/distributions/gentoo" LANG="en_US.UTF-8" LC_ALL="en_US.UTF-8" LDFLAGS="-Wl,-O1" MAKEOPTS="-j3" PKGDIR="/usr/portage/packages" PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --stats --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages" PORTAGE_TMPDIR="/var/tmp" PORTDIR="/usr/portage" PORTDIR_OVERLAY="/usr/portage/local/miscellaneous /usr/portage/local/layman/desktop-effects /usr/portage/local/layman/vmware" SYNC="rsync://rsync.gentoo.org/gentoo-portage" USE="3dnow S3TC X a52 aac aalib accessibility acl acpi alsa amarok amd64 apm arts artworkextra audiofile automount avahi bash-completion berkdb bidi binary-drivers bittorrent bluetooth branding bzip2 cairo calendar cdda cdio cdparanoia cdr clamav clamd cli cpudetection cracklib crypt css cups curl dbus deprecated devil dga directfb discouraged distribution divx doc dri dts dv dvb dvd dvdr dvdread eds elisp emacs emboss emerald encode esd etc-proposals evo examples exif extraicons fam fat fax fbcon fbcondecor fbsplash ffmpeg firefox flac flash foomaticdb fortran fuse gcj gd gdbm gedit gif gimp glep glitz gmedia gnome gnutls gphoto2 gpm gstreamer gtk gtkhtml hal hddtemp hfs html htmlhandbook httpd iconv idn ieee1394 imagemagick imlib inkjar ipv6 isdnlog jack java jfs joystick jpeg jpeg2k kde kdehiddenvisibility kerberos lcms ldap libcaca libnotify lirc live lm_sensors logrotate mad mail matroska mdnsresponder-compat midi mikmod mime mjpeg mmx mmxext mng mono mozilla mp3 mpeg mplayer mudflap multilib musicbrainz mysql nas nautilus ncurses networking new-login nforce2 nls nptl nptlonly nsplugin ntfs nvidia odbc offensive ogg openexr opengl openmp pam parport pcre pdf perl pmu png postgres ppds pppd pulseaudio python qt3 qt3support qt4 quicktime rar rdesktop readline realmedia reflection regex reiser4 reiserfs samba scanner sdl seamonkey semantic-desktop servletapi session skins slang slp smp sndfile snmp sound sounds speex spell spl sqlite sse sse2 ssl startup-notification stream subversion svg swat symlink sysfs syslog tcpd theora thesaurus threads thunderbird tidy tiff timidity tk truetype type1 unicode usb userlocales utempter utils v4l vcd vdr vlm voice vorbis vram weather wmf wmp wordperfect wxwindows xattr xcb xcomposite xforms xfs xine xml xorg xpm xprint xscreensaver xv xvid xvmc zeroconf zlib" ALSA_CARDS="ali5451 als4000 atiixp atiixp-modem bt87x ca0106 cmipci emu10k1x ens1370 ens1371 es1938 es1968 fm801 hda-intel intel8x0 intel8x0m maestro3 trident usb-audio via82xx via82xx-modem ymfpci" ALSA_PCM_PLUGINS="adpcm alaw asym copy dmix dshare dsnoop empty extplug file hooks iec958 ioplug ladspa lfloat linear meter mmap_emul mulaw multi null plug rate route share shm softvol" APACHE2_MODULES="actions alias auth_basic authn_alias authn_anon authn_dbm authn_default authn_file authz_dbm authz_default authz_groupfile authz_host authz_owner authz_user autoindex cache dav dav_fs dav_lock deflate dir disk_cache env expires ext_filter file_cache filter headers include info log_config logio mem_cache mime mime_magic negotiation rewrite setenvif speling status unique_id userdir usertrack vhost_alias" ELIBC="glibc" INPUT_DEVICES="keyboard mouse evdev" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" USERLAND="GNU" VIDEO_CARDS="fbdev glint i810 mach64 mga neomagic nv r128 radeon savage sis tdfx trident vesa vga via vmware voodoo" Unset: CPPFLAGS, CTARGET, EMERGE_DEFAULT_OPTS, FFLAGS, INSTALL_MASK, LINGUAS, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS
Does revdep-rebuild show any issues? I can't seem to reproduce this here. libgio is not used by mplayerplug-in, as far as I can tell.
revdep does not show any issues, in fact I am currently re-emerging my entire system in the slight event that this is related to a broken package that revdep doesn't show.
BTW, this appears to be a problem only on amd64. On X86 it compiles fine.
This has something to do with the new glib-2.18.1 because after checking my emerge log (and also googling!!), it seems that this sort of thing with libgio is always related to glib updates.
AMD64 team, do you have any input for this? It certainly isn't happening on ppc. :|
Same error here, on brand new ~amd64 (Intel Core 2) install. emerge --info: Portage 2.2_rc11 (default/linux/amd64/2008.0, gcc-4.3.1, glibc-2.7-r2, 2.6.25-gentoo-r7 x86_64) ================================================================= System uname: Linux-2.6.25-gentoo-r7-x86_64-Intel-R-_Core-TM-2_Duo_CPU_E8500_@_3.16GHz-with-glibc2.2.5 Timestamp of tree: Tue, 30 Sep 2008 16:45:05 +0000 distcc 2.18.3 x86_64-pc-linux-gnu (protocols 1 and 2) (default port 3632) [disabled] ccache version 2.4 [enabled] app-shells/bash: 3.2_p39 dev-java/java-config: 1.3.7, 2.1.6-r1 dev-lang/python: 2.5.2-r8 dev-python/pycrypto: 2.0.1-r6 dev-util/ccache: 2.4-r8 sys-apps/baselayout: 2.0.0 sys-apps/openrc: 0.2.5 sys-apps/sandbox: 1.2.18.1-r3 sys-devel/autoconf: 2.13, 2.63 sys-devel/automake: 1.4_p6, 1.5, 1.7.9-r1, 1.8.5-r3, 1.9.6-r2, 1.10.1-r1 sys-devel/binutils: 2.18-r3 sys-devel/gcc-config: 1.4.0-r4 sys-devel/libtool: 1.5.26 virtual/os-headers: 2.6.23-r3 ACCEPT_KEYWORDS="amd64 ~amd64" CBUILD="x86_64-pc-linux-gnu" CFLAGS="-O2 -march=nocona -pipe" CHOST="x86_64-pc-linux-gnu" CONFIG_PROTECT="/etc /usr/kde/3.5/env /usr/kde/3.5/share/config /usr/kde/3.5/shutdown /usr/share/config /var/lib/hsqldb" CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/env.d /etc/env.d/java/ /etc/fonts/fonts.conf /etc/gconf /etc/gentoo-release /etc/revdep-rebuild /etc/terminfo /etc/texmf/web2c /etc/udev/rules.d" CXXFLAGS="-O2 -march=nocona -pipe" DISTDIR="/usr/portage/distfiles" FEATURES="ccache distlocks parallel-fetch preserve-libs protect-owned sandbox sfperms strict unmerge-orphans userfetch" GENTOO_MIRRORS="http://trumpetti.atm.tut.fi/gentoo/" LDFLAGS="-Wl,-O1" LINGUAS="fi" MAKEOPTS="-j3" PKGDIR="/usr/portage/packages" PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --stats --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages" PORTAGE_TMPDIR="/var/tmp" PORTDIR="/usr/portage" PORTDIR_OVERLAY="/usr/local/portage" SYNC="rsync://rsync.europe.gentoo.org/gentoo-portage" USE="X a52 aac acpi alsa amd64 berkdb bluetooth bzip2 cairo cli crypt cups curl dbus dirac dri dv dvd dvdread encode exif ffmpeg flac fortran gdbm gif gnome gpm gtk2 hal iconv id3tag ieee1394 imagemagick ipv6 isdnlog jack joystick jpeg kde ladspa lash lcms libnotify lzo mad matroska midi mikmod mjpeg mmap mmx motif mp3 mp4 mpeg mudflap multilib ncurses nls nptl nptlonly nsplugin ogg openexr opengl openmp pam pcre pdf perl png pppd python qt3 qt4 quicktime readline reflection ruby scanner sdl session sndfile spl sqlite sqlite3 sse sse2 ssl svg sysfs tcpd theora tiff truetype unicode usb v4l v4l2 vorbis x264 xine xinerama xml xorg xulrunner xv xvmc zlib" ALSA_CARDS="seq-dummy dummy virmidi mtpav mts64 serial-u16550 mpu401 loopback portman2x4 ad1889 als300 als4000 ali5451 atiixp atiixp-modem au8810 au8820 au8830 azt3328 bt87x ca0106 cmipci cs4281 cs46xx cs5535audio darla20 gina20 layla20 darla24 gina24 layla24 mona mia echo3g indigo indigoio indigodj emu10k1 emu10k1x ens1370 ens1371 es1938 es1968 fm801 hda-intel hdsp hdspm ice1712 ice1724 intel8x0 intel8x0m korg1212 maestro3 mixart nm256 pcxhr riptide rme32 rme96 rme9652 sonicvibes trident via82xx via82xx-modem vx222 ymfpci pdplus asihpi usb-audio usb-usx2y vxpocket pdaudiocf soc aica emi26 emu1212 emu1616 emu1820" ALSA_PCM_PLUGINS="adpcm alaw asym copy dmix dshare dsnoop empty extplug file hooks iec958 ioplug ladspa lfloat linear meter mmap_emul mulaw multi null plug rate route share shm softvol" APACHE2_MODULES="actions alias auth_basic authn_alias authn_anon authn_dbm authn_default authn_file authz_dbm authz_default authz_groupfile authz_host authz_owner authz_user autoindex cache dav dav_fs dav_lock deflate dir disk_cache env expires ext_filter file_cache filter headers include info log_config logio mem_cache mime mime_magic negotiation rewrite setenvif speling status unique_id userdir usertrack vhost_alias" ELIBC="glibc" INPUT_DEVICES="evdev keyboard mouse joystick" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LINGUAS="fi" USERLAND="GNU" VIDEO_CARDS="vesa fglrx mga radeon radeonhd" Unset: CPPFLAGS, CTARGET, EMERGE_DEFAULT_OPTS, FFLAGS, INSTALL_MASK, LANG, LC_ALL, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS
here too
Use -gtk can workaround for now.
Or, better still, downgrade to gtk+-2.12.x!!! It seems that the gtk+-2.14 breaks quite a lot of programs, I had to downgrade to 2.12.11 yesterday to be able to compile libview-0.6.1 (a vmware-player dependency), and just tried to install mplayerplug-in again today. To my surprise it compiled & works fine!!!
I have sent mail upstream of this problem, hopefully the developers will be able to fix this quickly.
Does not appear to be an mplayerplug-in bug. mplayerplug-in does not use gio and if you'll notice in the logs that the linker is finding an incompatible libgio. I believe this issue is arch/machine dependent.
So if you don't believe that this is an mplayerplug-in problem, what do you think needs to be fixed?
I believe it is a problem with the way libgio is compiled, since the error messages are saying that libgio.a is not compatible. I am guessing you are compiling in 64 bit mode... notice this from below skipping incompatible /usr/lib/libgio-2.0.a when searching for -lgio-2.0 Shouldn't that be looking at /usr/lib64/libgio-2.0.a ? All the other paths are looking in /usr/lib64. And like I said gio is not used by mplayerplug-in and so the only way it is brought in, is by the .pc files. On my Fedora machine, gio is enabled in its own .pc file, glib doesn't know anything about it. So something is dragging in gio. And when it does drag it in, it is getting the 32 bit version over the correct 64bit version.
BTW, why are you not using gecko-mediaplayer and gnome-mplayer? They are the replacement for mplayerplug-in that are written on a much cleaner codebase. http://kdekorte.googlepages.com/gecko-mediaplayer http://kdekorte.googlepages.com/gnomemplayer
Kevin, just for the heck of it I bumped both of the current .63 ebuilds to .80 and emerged , neither the 63 or 80 versions would play any video files on my box, I tried all 3 video outputs and no go.
I too had the same experience with gecko-mediaplayer etc, all I got was a blank screen. So it's a mplayerplug-in for me, at least it works (when it compiles...)
Kevin, I appreciate your suggestion and I believe some day that gecko mediaplayer may be able to replace mplayerplug-in but with the current experience (and also the fact that many of us enjoy the 32bit and 64bit mplayer plugin compiles), it doesn't fill our needs. Please tell us what can we do to get this to compile. What I can say for sure is that downgrading gtk+ to 2.12 makes it compile. Who do we bug, gtk+ people or glib people?
Investigate your .pc files and see which ones pull in gio. mplayerplug-in uses gtk-2.0, gthread-2.0 you should be able to check them with pkg-config --libs gtk-2.0 pkg-config --libs gthread-2.0 You may also check some of your other flags. I don't know all the tricks that are done with Gentoo so you're kinda on your own and I don't have a gtk 2.14 based machine. And gecko-mediaplayer and gnome-mplayer work for me and a couple of thousand other people so perhaps we could talk out of this ticket about the problems you are seeing there.
Kevin, let me try to understand something, and I ask you this because I know both projects (mplayerplug-in & gecko mediaplayer) are oyur work. Is gecko media player the replacement for mplayerplug-in? Will mplayerplug-in be supported in the future? Kevin, let me suggest that if you are to continue supporting mplayerplug-in, you need to help us find a way to have it compile against gtk+ 2.14 as most distros will be using that version in the next few months. I will start a new bug for gnome-mplayer.
Commented on gnome-mplayer problems here http://bugs.gentoo.org/show_bug.cgi?id=232036 Kevin, hopefully you can help out.
Played with this a bit last night, the source package compiled and configured manually compiles and installs, I believe we have a problem in the ebuild or what the ebuild configures.
Kevin, I have spent several hours trying to fix this, the problem lies in the use flag gtk2 in your program, it is not a gentoo problem. Mplayerplug-in does not compile against gtk+ 2.14 even when trying to do it manually (without the ebuild.). This is a problem that you guys must fix upstream and make it that mplayerplug-in compiles against gtk 2.14 because as distros upgrade soon, they will be coming across the same problem.
Please post the Makefile, the output of pkg-config --libs gtk+-2.0 and pkg-config --libs gthread-2.0 Also will you check and see if libgio-2.0 exists in /usr/lib64, my guess is that it does not. I believe that glib is bringing in libgio-2.0, but that libgio-2.0 has not be properly compiled for 64bit support on your machine. I don't know how to say this any clearer, there is nothing that can be done in the mplayerplug-in package to make it compile on a broken system. The mplayerplug-in makefiles just use the values that configure gives it.
I know there are some autotools experts here, perhaps Flameyes (Diego) can be added to the CC for a look?
I have to admit, gecko-mediaplayer works as well or better than mplayerplug-in, only thing is make sure to disable ASS when you first start it up. I am going to move on to gecko-mediaplayer and Mplayerplug-in R.I.P!!
(In reply to comment #23) ok I just had the same problem with my ~amd64 system pkg-config --libs gtk+-2.0 -lgtk-x11-2.0 -lgdk-x11-2.0 -latk-1.0 -lgio-2.0 -lpangoft2-1.0 -lgdk_pixbuf-2.0 -lpangocairo-1.0 -lcairo -lpango-1.0 -lfreetype -lz -lfontconfig -lgobject-2.0 -lgmodule-2.0 -lglib-2.0 pkg-config --libs gthread-2.0 -pthread -lgthread-2.0 -lrt -lglib-2.0 ls /usr/lib64/libgio* libgio-2.0.a libgio-2.0.so.0 libgiomm-2.4.so libgio-2.0.la libgio-2.0.so.0.1800.1 libgiomm-2.4.so.1 libgio-2.0.so libgiomm-2.4.la libgiomm-2.4.so.1.0.25 So this is not a problem of missing library, not a problem with 32bit libraries linking against 64bit binary nor the other way round because I only compile the 64bit version of mplayerplug-in.
I confirm : ebuild /[...]/mplayerplug-in-3.55.ebuild unpack cd [...]/work/mplayerplug-in-3.55/ make && make install just works. So this might be an ebuild problem more than a source bug.
Aelia, unfortunately you are wrong, it is not an ebuild problem, the ebuild is fine, if you do not enable gtk which is disabled by default (configure, make, make install), then it emerges fine, enable gtk and it's got the very same problem if you compile it manually. The problem is with the new gtk, NOT autotools. This is definite and the problem is definitely upstream. Kevin from the mplayer plugin project himself reccomends using gecko mediaplayer and frankly I agree. Gecko mediaplayer at least for me seems to work much smoother without need to keep pushing play to get it to start, I think although I have been a big mplayer plugin fan for many years, gecko mediaplayer is now the way to go.
sorry to insist but I forced the --enable-gtk2 in the configure script flag and it compiled no problem again and said : checking for GTK... yes checking for GTK24... yes Plus gecko-mediaplayer depends on firefox-2/xulrunner-1.8 and I have firefox 3.0.3/xulrunner-1.9 installed where as mplayerplug-in depends on xulrunner-1.9 I don't really want to have two different versions of xulrunner just for one plugin...
gecko-mediaplayer works fine on xulrunner 1.9. It is a false dependency in the ebuild. However, is there is a detection problem, I will work on fixing that.
Aelia, I don't know how or why that is happening on your machine but when I tried compiling it manually from source (no ebuild), I got the very same error as it gets when emerging. Maybe you have a different version of gtk?
I have run into this bug as well. Just to help speed up the process I thought I would clear something up for Kevin though. When you see it trying to pull in the incompatible libs from /usr/lib those are 64 bit libs. On a Gentoo AMD64 system we have this: lrwxrwxrwx 1 root root 5 Mar 24 2006 /usr/lib -> lib64 drwxr-xr-x 21 root root 20296 Oct 22 02:44 /usr/lib32 drwxr-xr-x 163 root root 144544 Oct 22 02:56 /usr/lib64 Cheers.
ok, what does the following provide file -L /usr/lib64/libglib-2.0.so and then the same for file -L /usr/lib64/libgio-2.0.so on my machine I get this.. [kdekorte@quad lib64]$ file -L /usr/lib64/libglib-2.0.so /usr/lib64/libglib-2.0.so: ELF 64-bit LSB shared object, x86-64, version 1 (SYSV), stripped [kdekorte@quad lib64]$ file -L /usr/lib64/libgio-2.0.so /usr/lib64/libgio-2.0.so: ELF 64-bit LSB shared object, x86-64, version 1 (SYSV), stripped Those should be the same, I believe if they are not then it results in the incompatible warning. Also, I just converted my machine to Fedora 9 x86_64 and I can compile mplayerplug-in on there. But that gtk is 2.12.12 and glib is 2.16.6 which appears to work on gentoo as well.
billydv@Linux1 ~ $ file -L /usr/lib64/libglib-2.0.so /usr/lib64/libglib-2.0.so: ELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, stripped billydv@Linux1 ~ $ file -L /usr/lib64/libgio-2.0.so /usr/lib64/libgio-2.0.so: ELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, stripped
what about file -L /usr/lib/libgio-2.0.so I know that should be pointing to the one in /usr/lib64, but just to be sure.
file -L /usr/lib/libgio-2.0.so /usr/lib/libgio-2.0.so: ELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, stripped (yeah, I got the problem as well)
billydv@Linux1 ~ $ file -L /usr/lib/libgio-2.0.so /usr/lib/libgio-2.0.so: ELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, stripped billydv@Linux1 ~ $
The problem when recent gtk+ libraries have been installed is that the 32-bit compiler is not finding the 32-bit libgio-2.0 library, because pkg-config is giving the link flags from 64-bit gtk+ instead of 32-bit ones (which are older). Next sentence is run by configure script from mplayerplug-in: pkg-config --libs "gtk+-2.0 >= 2.4.0" You can see the 32-bit/64-bit issue once the compilation has failed, if you go to /var/tmp/portage/net-www/mplayerplug-in-3.55/work/mplayerplug-in-3.55 and run 'file *.o'. You get something like: np_entry.o: ELF 32-bit LSB relocatable, Intel 80386, version 1 (SYSV) npn_gate.o: ELF 32-bit LSB relocatable, Intel 80386, version 1 (SYSV) npp_gate.o: ELF 32-bit LSB relocatable, Intel 80386, version 1 (SYSV) nsScriptablePeer.o: ELF 32-bit LSB relocatable, Intel 80386, version 1 (SYSV) plugin-list.o: ELF 32-bit LSB relocatable, Intel 80386, version 1 (SYSV) plugin-setup-dvx.o: ELF 32-bit LSB relocatable, Intel 80386, version 1 (SYSV) plugin-setup-gmp.o: ELF 32-bit LSB relocatable, Intel 80386, version 1 (SYSV) plugin-setup-qt.o: ELF 32-bit LSB relocatable, Intel 80386, version 1 (SYSV) plugin-setup-rm.o: ELF 32-bit LSB relocatable, Intel 80386, version 1 (SYSV) plugin-setup-wmp.o: ELF 32-bit LSB relocatable, Intel 80386, version 1 (SYSV) plugin-setup.o: ELF 32-bit LSB relocatable, Intel 80386, version 1 (SYSV) plugin-support.o: ELF 32-bit LSB relocatable, Intel 80386, version 1 (SYSV) plugin-threads.o: ELF 32-bit LSB relocatable, Intel 80386, version 1 (SYSV) plugin-ui.o: ELF 32-bit LSB relocatable, Intel 80386, version 1 (SYSV) plugin.o: ELF 32-bit LSB relocatable, Intel 80386, version 1 (SYSV) strlcat.o: ELF 32-bit LSB relocatable, Intel 80386, version 1 (SYSV) strlcpy.o: ELF 32-bit LSB relocatable, Intel 80386, version 1 (SYSV) So, it seems that the easier solutions for Gentoo are either having a separate pkg-config behavior when 32bit libraries are requested, or creating a new emul-linux-x86-gtklibs package which contains the 32 bit version. The harder, but better, would be compiling both 32 and 64 versions of gtk+ when gtk+ is installed in amd64.
Ok, that is interesting... can I ask a couple of questions 1. Is firefox 32bit on gentoo? 2. Also, mplayerplug-in needs to be the same arch and built with the same libs as firefox, but mplayer does not... So you can have a 64bit firefox -> 64bit mplayerplug-in with a 64bit or 32bit mplayer. Or you can have everything be 32bit or everything 64bit. In my personal setup (Fedora 9). I use a 64bit firefox, 64bit gecko-mediaplayer, 64bit gnome-mplayer and a 32bit mplayer. I also use nspluginwrapper to load a 32bit flash into my 64bit browser. I find this solution to be ok. Flash still crashes every now and then, but at least it does not take the browser with it.
Maybe the simple workaround in the ebuild is to set the PKG_CONFIG_PATH variable On Fedora the 32bit package config files go into /usr/lib/pkgconfig and the 64 bit ones go to /usr/lib64/pkgconfig. So keeping those isolated may help in this issue. Does Gentoo have a similar separation of the .pc files for different arches?
(In reply to comment #39) > Ok, that is interesting... can I ask a couple of questions > > 1. Is firefox 32bit on gentoo? As far as I know as a power user, Firefox is available both in 32 and 64 bit on amd64. The 32 bit version (mozilla-firefox-bin) is pre-compiled, meanwhile the 64 one (mozilla-firefox) is compiled by the Gentoo package. > 2. Also, mplayerplug-in needs to be the same arch and built with the same libs > as firefox, but mplayer does not... I have been looking at mplayerplug-in Gentoo package, and it depends on either xulrunner or mozilla-firefox. When any of them is installed, it compiled and all the necessary headers and files to use/compile with them are installed. > > So you can have a 64bit firefox -> 64bit mplayerplug-in with a 64bit or 32bit > mplayer. > Some months ago you had the chance to install both the 32 bit and 64 bit versions of mplayer (the first one, precompiled). As far as I know, the 32 bit version was retired from the repository because it was being actively maintained. So, only 64 bit mplayer is currently available in amd64 Gentoo architecture. > Or you can have everything be 32bit or everything 64bit. > Everything 32 bit is a x86 Gentoo architecture. Everything 64 bit is an utopia from my point of view.
(In reply to comment #40) > Maybe the simple workaround in the ebuild is to set the PKG_CONFIG_PATH > variable > > On Fedora the 32bit package config files go into /usr/lib/pkgconfig and the 64 > bit ones go to /usr/lib64/pkgconfig. So keeping those isolated may help in this > issue. Does Gentoo have a similar separation of the .pc files for different > arches? > I have been looking for a separate pkgconfig directory for 32bit package, but I was unable to find it. I guess that 32 bit .pc files are not installed, because most of those 32 bit libraries are precompiled.
In my case, I had mplayerplug-in-3.55 installed, but then I switched my /etc/make.profile from default-linux/amd64/2007.0/desktop to default/linux/amd64/2008.0/desktop and did an emerge -DuN world. That's when I hit this bug. If I switch back to the 2007.0 profile and emerge mplayerplug-in I still hit the bug, but perhaps an emerge -DuN world would work (assuming this restores everything back the way it was before switching to the 2008.0 profile). In the 2007.0 profile, emerge -pv mplayerplug-in gives: [ebuild R ] net-www/mplayerplug-in-3.55 USE="firefox gtk nls quicktime xulrunner -divx -gmedia (-multilib) -realmedia -seamonkey -wmp" LINGUAS="-cs -da -de -en_US -es -fr -hu -it -ja -ko -nb -nl -pl -pt_BR -ru -se -sk -tr -wa -zh_CN" 0 kB In the 2008.0 profile, emerge -pv mplayerplug-in gives: [ebuild R ] net-www/mplayerplug-in-3.55 USE="firefox gtk (multilib*) nls quicktime xulrunner -divx -gmedia -realmedia -seamonkey -wmp" LINGUAS="-cs -da -de -en_US -es -fr -hu -it -ja -ko -nb -nl -pl -pt_BR -ru -se -sk -tr -wa -zh_CN" 0 kB
I think we just need an updated app-emulation/emul-linux-x86-baselibs package to provide the missing 32-bit libgio stuff. emul-linux-x86-baselibs-20080316 provides /usr/lib32/libglib-2.0.so.0.1400.6 and I think the 1400.6 means it was originally built from glib-2.14.6. However the gio stuff didn't appear until glib-2.16. As glib-2.16.5 is stable on x86, that could be used in an updated emul-linux-x86-baselibs build.
I added bug #245673 to request an updated emul-linux-x86-baselibs package.
(In reply to comment #5) > AMD64 team, do you have any input for this? It certainly isn't happening on > ppc. :| > Joe the best solution here would be to enable building only the 64bit abi and using another useflag to enable building the 32bit libs which most of us will never use on amd64!!!
I'm not sure what the intended purpose of the emul-linux-x86-* packages is. Are they meant to support building of 32-bit binaries against them (as the mplayerplug-in ebuild is trying to do), or just support installation of 32-bit "*-bin" packages? If they are meant to support the building 32-bit binaries against them, they would need include files, pkgconfig files, etc. (and ebuilds such as mplayerplug-in changed to pass the paths to these files to the configure scripts). If they are only meant to support 32-bit "*-bin" packages then the mplayerplug-in ebuild should not try and build the 32-bit plug-in on amd64 and there should be a "mplayerplug-in-bin" ebuild to install a pre-built 32-bit plug-in instead. Just my 2 eurocents.
happens here to also on ~amd64, with no 32bit firefox nor 32 bit mplayer
*** Bug 251915 has been marked as a duplicate of this bug. ***
I compiled it fine with -gtk. What about this weird option? configure: WARNING: unrecognized options: --enable-x86_64
Created attachment 176121 [details] 64bit support only This is for 64bit support only. I see no reason to have 32bit support built when most users only use the 64bit plugins. Maybe the ebuild should be split into two seperate packages, I might also change this so it depends on a useflag such as dual which would then allow users to build 32bit along with 64bit if they so wanted.
Hi there, same bug here (amd64) i tried : # USE="-gtk" emerge -av mplayerplug-in and I can confirm that this works as a first step to compile current versions of mplayerplug-in
I had the same problem here. And reading through the thread, the trouble seems to be not so much with the "gtk"-USE-Flag, instead the forced multilib USE-Flag seems to be the root of the problem. I disabled the multilib building by putting an exclamation mark in front of "has_multilib_profile" in line 78 and line 133 and it build without trouble and plays (at least the movies on gametrailers.com ;-) ) without a hitch. So I'm wondering, why is multilib enforced?
Is there an update on this?
*** Bug 254257 has been marked as a duplicate of this bug. ***
(In reply to comment #54) > Is there an update on this? See comments on bug #245673.
Hello, I just had the same issue with compiling net-www/mplayerplug-in-3.55. The message before compiling shows these information: Messages for package media-video/mplayer-1.0_rc2_p28288: * * MPlayer's build system uses the LINGUAS variable for both * output messages and which man pages to build. The first * language in the LINGUAS variable will be used to display * output messages. See bug #228799. * * You've enabled the 'gtk' use flag which will build * GMPlayer, which is no longer actively developed upstream * and is not supported by Gentoo. There are alternatives * for a GUI frontend: smplayer, gnome-mplayer and kmplayer. So gtk is not anymore actively developed. Afer switch off gtk support: USE="-gtk" emerge mplayerplug-in The emerge worked. Hope this info helps you... Cheers Roland
question: why should we need 32 bit compilation (and so emul pack) if we are builing again 64 firefox?
(In reply to comment #58) > question: why should we need 32 bit compilation (and so emul pack) if we are > builing again 64 firefox? > 99% of the users will never need the 32bit plugins, but there are a few and the package does support building both. The multilib profile check should not be used to control such a feature but has always been done this way hense they have always left it the way it is.
i can confirm : exclamation mark in front of "has_multilib_profile" in line 78 and line 133 helps, mplayerplug-in compiles with gtk+-2.14.7 !(has_multilib_profile) and dont forget to run "ebuild my.ebuild digest"
confirming as well that disabling gtk use flag works just fine (i now got both mplayer and mplayerplug-in as -gtk in my /etc/portage/package.use)
I confirm the attached ebuild works on amd64 with gtk enabled. I noticed flash has a 32bit useflag maybe we could make use of that useflag? In flash it installs both a 32bit and 64bit version if set. I also have no need of 32bit plugins.
Created attachment 184389 [details] 32bit libgio-2.0.so for the lazy, you can decompress this into /usr/lib32/
(In reply to comment #63) > Created an attachment (id=184389) [edit] > 32bit libgio-2.0.so > > for the lazy, you can decompress this into /usr/lib32/ Thanks, this worked on my AMD64 system. Didn't need to adjust any mplayerplug-in USE flags; just unpacked the .so into /usr/lib32/ and rebuilt the plugin. Once again, Mike saves the day.
Installing app-emulation/emul-linux-x86-baselibs-20081109 has fixed the problem here
Created attachment 186989 [details, diff] mplayerplug-in-3.55.ebuild.diff suggested fix with updated dependencies
mplayer-bin has been removed and the bits that built the 32bit plug-in from mplayerplug-in itself..
*** Bug 248206 has been marked as a duplicate of this bug. ***