The version of pango that is installed with this package seems to be picking up the module locations from the /etc/pango/pango.modules file. The problem is that under a 64 bit install, that file contains references to 64 libraries. Would it be possible for the emul version to use a different file for these module locations? With the current setup, when attempting to run a 32 bit version of eclipse, pango fails due to the attempt to use a 64 bit module. Steps to reproduce: Download & unpack a 32 bit JVM & eclipse. Run eclipse using the 32 bit vm. Eclipse window opens, but no text rendered. Lots of errors like this in output: Cannot load module /usr/lib/pango/1.2.0/modules/pango-basic-xft.so: /usr/lib/pango/1.2.0/modules/pango-basic-xft.so: cannot open shared object file: No such file or directory If you temporarily replace /etc/pango/pango.modules with one that refers to the 32 bit libraries, and run the same command, eclipse renders text ok. Leaving this modified pango.modules in place obviously breaks other things though.
Output of "ldd eclipse" shows that 32 bit version of pango shared library is being used: libgtk-x11-2.0.so.0 => /usr/lib32/libgtk-x11-2.0.so.0 (0x55576000) libgdk-x11-2.0.so.0 => /usr/lib32/libgdk-x11-2.0.so.0 (0x55780000) libatk-1.0.so.0 => /usr/lib32/libatk-1.0.so.0 (0x557e3000) libgdk_pixbuf-2.0.so.0 => /usr/lib32/libgdk_pixbuf-2.0.so.0 (0x557f9000) libm.so.6 => /lib32/libm.so.6 (0x5580c000) libpangoxft-1.0.so.0 => /usr/lib32/libpangoxft-1.0.so.0 (0x5582d000) libpangox-1.0.so.0 => /usr/lib32/libpangox-1.0.so.0 (0x5584d000) libpango-1.0.so.0 => /usr/lib32/libpango-1.0.so.0 (0x55859000) libgobject-2.0.so.0 => /usr/lib32/libgobject-2.0.so.0 (0x5588a000) libgmodule-2.0.so.0 => /usr/lib32/libgmodule-2.0.so.0 (0x558ba000) libdl.so.2 => /lib32/libdl.so.2 (0x558bf000) libglib-2.0.so.0 => /usr/lib32/libglib-2.0.so.0 (0x558c2000) libc.so.6 => /lib32/libc.so.6 (0x55926000) libXrandr.so.2 => /emul/linux/x86/usr/X11R6/lib/libXrandr.so.2 (0x55a3d000) libXext.so.6 => /emul/linux/x86/usr/X11R6/lib/libXext.so.6 (0x55a41000) libXft.so.2 => /emul/linux/x86/usr/X11R6/lib/libXft.so.2 (0x55a50000) libXrender.so.1 => /emul/linux/x86/usr/X11R6/lib/libXrender.so.1 (0x55a63000) libfontconfig.so.1 => /usr/lib32/libfontconfig.so.1 (0x55a6a000) libX11.so.6 => /emul/linux/x86/usr/X11R6/lib/libX11.so.6 (0x55a93000) libfreetype.so.6 => /usr/lib32/libfreetype.so.6 (0x55b69000) libz.so.1 => /usr/lib32/libz.so.1 (0x55bbe000) /lib/ld-linux.so.2 => /lib/ld-linux.so.2 (0x55555000) libexpat.so.0 => /usr/lib32/libexpat.so.0 (0x55bcd000)
i know this is an amd64 bug, but the solution might involve some edits/fixing to pango... adding gnome@ to CC
Created attachment 37712 [details, diff] patch to make pango install it's config to an arch-specific directory
gnome team: would there be a problem with applying something like this globally for all archs? or should i just hack this in for amd64, and x86 when building an emul-linux-x86 library?
patch applied for 1.4.1-r1. pango should now install the config file for the 64bit pango in /etc/pango/x86_64-pc-linux-gnu/. removing gnome from CC since the rest of this fix involves the 32bit emul libs.
i and to fix gtk as well, but the new gtklibs 1.2 should work. re-open this bug if you have any problems with it. i've only tested it with realplayer 10
Hhhhmmm... Attempts to start a 32 bit eclipse don't even get as far as they did before. Seems to be a further gtk related problem. The following errors are output at startup, and the application hangs at the splash screen. Unless this is something obvious problem, I will do some more digging and maybe open another bug. GLib: Cannot convert message: Conversion from character set 'UTF-8' to 'ISO-8859-1' is not supported (process:22337): Gdk-WARNING **: locale not supported by Xlib (process:22337): Gdk-WARNING **: can not set locale modifiers (<unknown>:22337): Gdk-WARNING **: Error converting from UTF-8 to STRING: Conversion from character set 'UTF-8' to 'ISO-8859-1' is not supported (<unknown>:22337): Gdk-WARNING **: Error converting from UTF-8 to STRING: Conversion from character set 'UTF-8' to 'ISO-8859-1' is not supported (<unknown>:22337): Gtk-WARNING **: Unable to locate theme engine in module_path: "thinice", (<unknown>:22337): Gtk-WARNING **: Unable to locate theme engine in module_path: "redmond95", (<unknown>:22337): Gtk-WARNING **: Unable to locate theme engine in module_path: "redmond95", (<unknown>:22337): Gdk-WARNING **: Error converting from UTF-8 to STRING: Conversion from character set 'UTF-8' to 'ISO-8859-1' is not supported (<unknown>:22337): Gdk-WARNING **: Error converting from UTF-8 to STRING: Conversion from character set 'UTF-8' to 'ISO-8859-1' is not supported (<unknown>:22337): Gdk-WARNING **: Error converting from UTF-8 to STRING: Conversion from character set 'UTF-8' to 'ISO-8859-1' is not supported (<unknown>:22337): Gdk-WARNING **: Error converting from UTF-8 to STRING: Conversion from character set 'UTF-8' to 'ISO-8859-1' is not supported (<unknown>:22337): Gdk-WARNING **: Error converting from UTF-8 to STRING: Conversion from character set 'UTF-8' to 'ISO-8859-1' is not supported