32bits gtk and glib modules not found in ia32-libs

Bug #369498 reported by Miles Lane on 2009-04-29
296
This bug affects 57 people
Affects Status Importance Assigned to Milestone
GLib
New
Medium
GTK+
Expired
Medium
glib2.0 (Ubuntu)
Medium
Unassigned
gtk+2.0 (Ubuntu)
Medium
Unassigned
ia32-libs (Ubuntu)
Medium
Scott Ritchie

Bug Description

Binary package hint: ia32-libs

With AMD64 version of Ubuntu 9.04 (fully updated today) and the latest version of Adobe Reader:

$ ./acroread
Gtk-Message: Failed to load module "canberra-gtk-module": /usr/lib/gtk-2.0/modules/libcanberra-gtk-module.so: wrong ELF class: ELFCLASS64
/usr/lib/gio/modules/libgioremote-volume-monitor.so: wrong ELF class: ELFCLASS64
Failed to load module: /usr/lib/gio/modules/libgioremote-volume-monitor.so
/usr/lib/gio/modules/libgiogconf.so: wrong ELF class: ELFCLASS64
Failed to load module: /usr/lib/gio/modules/libgiogconf.so
/usr/lib/gio/modules/libgvfsdbus.so: wrong ELF class: ELFCLASS64
Failed to load module: /usr/lib/gio/modules/libgvfsdbus.so

ia32-libs: 2.7ubuntu6

Dominik Zogg (schreiner) wrote :

Same errow with every all 32bit Software i use whos commercial:

skype:

schreiner@macbook:~$ skype
Gtk-Message: Failed to load module "canberra-gtk-module": /usr/lib/gtk-2.0/modules/libcanberra-gtk-module.so: wrong ELF class: ELFCLASS64

zattoo:

schreiner@macbook:~$ zattoo_player
Gtk-Message: Failed to load module "canberra-gtk-module": /usr/lib/gtk-2.0/modules/libcanberra-gtk-module.so: wrong ELF class: ELFCLASS64
12:32:01 02.05.2009 [MSG] Current locale is de_CH.UTF-8
12:32:01 02.05.2009 [MSG] Wilkommen bei Zattoo (3.3.3.20775)
12:32:01 02.05.2009 [MSG] Further log messages will be written to /home/schreiner/.Zattoo/Data/logs/zattoo.debuglog

If i link it fix to the 32bit libary i get the error in each other 64bit application, can i force a libary an application uses?

ktp420 (ktp420) wrote :

I am seeing the same messages but somehow correct libs seems to be loaded...at least for the theme. I don't use skype so can't say but the 32 bit apps are using seems to look and run ok.

Alexander Sack (asac) wrote :

libcanberra output indicates gtk bug not properly honoring GTK_HOST.

Changed in gtk+2.0 (Ubuntu):
assignee: nobody → Alexander Sack (asac)
importance: Undecided → Medium
status: New → In Progress
Alexander Sack (asac) wrote :

the following line indicates a bug in module loading code of glib/gio:

/usr/lib/gio/modules/libgioremote-volume-monitor.so: wrong ELF class: ELFCLASS64

Changed in glib2.0 (Ubuntu):
assignee: nobody → Alexander Sack (asac)
importance: Undecided → Medium
status: New → In Progress
Alexander Sack (asac) wrote :

ia32libs package has to provide the following $(host) links (similar to what is already provided in the /usr/lib/gtk-2.0/2.10.0/ directory:

 ln -s /usr/lib32/gtk-2.0/modules /usr/lib/gtk-2.0/modules/$(host)
 ln -s /usr/lib32/gio/modules /usr/lib/gio/modules/$(host)

Changed in ia32-libs (Ubuntu):
assignee: nobody → Fabien Tassin (fta)
importance: Undecided → Medium
status: New → Triaged
Alexander Sack (asac) wrote :

gtk and glib packages uploaded to my sandbox ppa: https://edge.launchpad.net/~asac/+archive/sandbox

on top of the links mentioned in previous comment, add the libs from there to ia32libs to fix this

Alexander Sack (asac) wrote :

just noticed that /usr/lib32/gio doesnt exist; ia32libs needs to ship the gio modules needed too i guess.

Alexander Sack (asac) wrote :

The gio libs required for /usr/lib32 are shipped in gvfs ...

Alexander Sack (asac) wrote :
Alexander Sack (asac) wrote :
Alexander Sack (asac) wrote :
Changed in glib:
status: Unknown → New
Changed in gtk:
status: Unknown → New
Alexander Sack (asac) wrote :

will upload when alpha-1 freeze is lifted.

John Cheng (chonger-cheng) wrote :

I am also seeing the same problem. This is happening with the installer for Adobe's Air for Linux.

jcheng@jackrabbit:~/downloads$ ./AdobeAIRInstaller.bin
Gtk-Message: Failed to load module "canberra-gtk-module": /usr/lib/gtk-2.0/modules/libcanberra-gtk-module.so: wrong ELF class: ELFCLASS64
jcheng@jackrabbit:~/downloads$ ldd ./AdobeAIRInstaller.bin
 linux-gate.so.1 => (0xf7f5c000)
 libm.so.6 => /lib32/libm.so.6 (0xf7f11000)
 libpthread.so.0 => /lib32/libpthread.so.0 (0xf7ef8000)
 libc.so.6 => /lib32/libc.so.6 (0xf7d94000)
 /lib/ld-linux.so.2 (0xf7f5d000)

Note that this problem happens with Adobe Air as well, but to reproduce the error message easily, one only needs to run the installer.

John Cheng (chonger-cheng) wrote :

I missed a couple of other error messages, I hope this helps:

/usr/lib/gio/modules/libgvfsdbus.so: wrong ELF class: ELFCLASS64
Failed to load module: /usr/lib/gio/modules/libgvfsdbus.so
/usr/lib/gio/modules/libgioremote-volume-monitor.so: wrong ELF class: ELFCLASS64
Failed to load module: /usr/lib/gio/modules/libgioremote-volume-monitor.so
/usr/lib/gio/modules/libgiogconf.so: wrong ELF class: ELFCLASS64
Failed to load module: /usr/lib/gio/modules/libgiogconf.so

Fabien Tassin (fta) on 2009-05-22
Changed in ia32-libs (Ubuntu):
status: Triaged → In Progress
Savvas Radevic (medigeek) wrote :

Alexander Sack:
> will upload when alpha-1 freeze is lifted.

Aren't we in alpha-2 now?

just installed the -j packages and all seems OK (get youtube, flash audio playback now) even though I still get the following displayed when I run from shell:

(npviewer.bin:29816): Gdk-WARNING **: GdkWindow 0x4200003 unexpectedly destroyed
The program 'npviewer.bin' received an X Window System error.
This probably reflects a bug in the program.
The error was 'BadWindow (invalid Window parameter)'.
  (Details: serial 256 error_code 3 request_code 18 minor_code 0)
  (Note to programmers: normally, X errors are reported asynchronously;
   that is, you will receive the error a while after causing it.
   To debug your program, run it with the --sync command line
   option to change this behavior. You can then get a meaningful
   backtrace from your debugger if you break on the gdk_x_error() function.)
*** NSPlugin Wrapper *** ERROR: NPP_Destroy() invoke: Broken pipe
*** NSPlugin Wrapper *** ERROR: NPObject 0x28d8060 is no longer valid!
Gtk-Message: Failed to load module "canberra-gtk-module": /usr/lib/gtk-2.0/modules/libcanberra-gtk-module.so: wrong ELF class: ELFCLASS64
Gtk-Message: Failed to load module "canberra-gtk-module": /usr/lib/gtk-2.0/modules/libcanberra-gtk-module.so: wrong ELF class: ELFCLASS64

Alexander Sack (asac) wrote :

i dont think there is anything to fix in gtk itself. we know how to create a proper link now.

summary: - Errors when running acroread in 9.04 (fully updated)
+ 32bits gtk and glib modules not found in ia32-libs(fully updated)
summary: - 32bits gtk and glib modules not found in ia32-libs(fully updated)
+ 32bits gtk and glib modules not found in ia32-libs (fully updated)
summary: - 32bits gtk and glib modules not found in ia32-libs (fully updated)
+ 32bits gtk and glib modules not found in ia32-libs
Changed in gtk+2.0 (Ubuntu):
assignee: Alexander Sack (asac) → nobody
status: In Progress → Invalid

today i have the same problem, but the strange thing is only from my user:

alberto@SMODATO:~$ acroread
Gtk-Message: Failed to load module "canberra-gtk-module": /usr/lib/gtk-2.0/modules/libcanberra-gtk-module.so: wrong ELF class: ELFCLASS64
/usr/lib/gio/modules/libgioremote-volume-monitor.so: wrong ELF class: ELFCLASS64
Failed to load module: /usr/lib/gio/modules/libgioremote-volume-monitor.so
/usr/lib/gio/modules/libgvfsdbus.so: wrong ELF class: ELFCLASS64
Failed to load module: /usr/lib/gio/modules/libgvfsdbus.so
/usr/lib/gio/modules/libgiogconf.so: wrong ELF class: ELFCLASS64
Failed to load module: /usr/lib/gio/modules/libgiogconf.so

BUT FROM ROOT ALL WORKS FINE and i don't understand why!

Best regards.

i'm trying to explain better:

acroread works fine in both situation....user and root.

as root acrobat starts in the correct way, but as user it gives to me the error message:

Gtk-Message: Failed to load module "canberra-gtk-module": /usr/lib/gtk-2.0/modules/libcanberra-gtk-module.so: wrong ELF class: ELFCLASS64
/usr/lib/gio/modules/libgioremote-volume-monitor.so: wrong ELF class: ELFCLASS64
Failed to load module: /usr/lib/gio/modules/libgioremote-volume-monitor.so
/usr/lib/gio/modules/libgvfsdbus.so: wrong ELF class: ELFCLASS64
Failed to load module: /usr/lib/gio/modules/libgvfsdbus.so
/usr/lib/gio/modules/libgiogconf.so: wrong ELF class: ELFCLASS64
Failed to load module: /usr/lib/gio/modules/libgiogconf.so

but after the license confirmation it works fine.
from firefox is the same, if i'm trying to oper a pdf file acrobat ask to me to confirm the license. The strange thing is that:
every time i oper acrobat from user i have to confirm the licence as the first time, but it works.

So the problem in my opinion is a grant permission problem because from user there is no error message.
Is there someone that has the same problem?
Can you try to open acroread from root?
Can someone confirm this kind of bug?
Best regards.

dr.spock (dr.spock) wrote :

Only working as root for me:

As user acroread doesn't works, no graphical output:
****************
$ acroread
rm: no s’ha pogut eliminar «/home/ENTERPRISE-NET/agarcia/.adobe/Acrobat/8.0/Preferences/mozilla/prefs.js»: Permission denied
cp: no s’ha pogut eliminar «/home/ENTERPRISE-NET/agarcia/.adobe/Acrobat/8.0/Preferences/mozilla/prefs.js»: Permission denied

(acroread-en:12895): GLib-WARNING **: getpwuid_r(): failed due to unknown user id (1001915476)
Gtk-Message: Failed to load module "canberra-gtk-module": /usr/lib/gtk-2.0/modules/libcanberra-gtk-module.so: wrong ELF class: ELFCLASS64
****************

As root (with sudo from console) it works flawless, and doesn't show license agreement (I accepted it before). I only get:

****************
Failed to load module: /usr/lib/gio/modules/libgvfsdbus.so
****************

when opening a document, but it works without problems.

dr.spock (dr.spock) wrote :

sorry:

"rm:2 and "cp:" lines are due to a previous execution with sudo. If I manually delete "prefs.js", result is the same last lines "(acroread-en: ...."

As you can see, my user id is too high. That's because I joined a Windows domain with likewise-open, but I don't know if it has something to do with the problem.

Oleg Cherkasov (o1e9) wrote :

The alternative would be to add into user's or environment profile:

export GTK_PATH=/usr/lib32/gtk-2.0:/usr/lib/gtk-2.0

Scott Ritchie (scottritchie) wrote :

This may be fixed with current Karmic by just fixing some of the broken includes in ia32-libs. Please retest with ia32-libs-2.7ubuntu10 or later.

vak (khamenya) wrote :

my Skype (2.0.0.72) crashes under fresh Karmic with the followign seen in console:

Gtk-Message: Failed to load module "canberra-gtk-module": /usr/lib/gtk-2.0/modules/libcanberra-gtk-module.so: wrong ELF class: ELFCLASS64
ALSA lib ../../src/conf.c:2700:(snd_config_hooks_call) Cannot open shared library libasound_module_conf_pulse.so
ALSA lib ../../../src/control/control.c:909:(snd_ctl_open_noupdate) Invalid CTL hw:0

any hints?

vak (khamenya) wrote :

sorry, I didn't mention, I have an AMD64 distro, so maybe it is not fully for this thread?

vak wrote:
> my Skype (2.0.0.72) crashes under fresh Karmic with the followign seen
> in console:
>
> Gtk-Message: Failed to load module "canberra-gtk-module": /usr/lib/gtk-2.0/modules/libcanberra-gtk-module.so: wrong ELF class: ELFCLASS64
> ALSA lib ../../src/conf.c:2700:(snd_config_hooks_call) Cannot open shared library libasound_module_conf_pulse.so
> ALSA lib ../../../src/control/control.c:909:(snd_ctl_open_noupdate) Invalid CTL hw:0
>
> any hints?
>

Please:
dpkg -s ia32-libs
And:
ldd /usr/lib32/gtk-2.0/modules/libcanberra-gtk-module.so

Thank you!

vak (khamenya) wrote :
Download full text (4.1 KiB)

$ dpkg -s ia32-libs
Package: ia32-libs
Status: install ok installed
Priority: extra
Section: libs
Installed-Size: 128088
Maintainer: Ubuntu MOTU developers <email address hidden>
Architecture: amd64
Version: 2.7ubuntu10
Replaces: ia32-libs-dev (<< 1.6), ia32-libs-openoffice.org, nvidia-glx-ia32 (<< 1.0.8774-7)
Provides: ia32-libs-gtk, ia32-libs-sdl
Depends: lsb-release, lib32gcc1, libc6-i386 (>= 2.3.6-2), lib32z1, lib32stdc++6, lib32asound2, lib32asound2-plugins, lib32bz2-1.0, lib32ncurses5, lib32v4l-0
Pre-Depends: dpkg (>= 1.14.12ubuntu3)
Conflicts: ia32-libs-dev (<< 1.6), nvidia-glx-ia32 (<< 1.0.8774-7)
Description: ia32 shared libraries for use on amd64 and ia64 systems
 This package contains runtime libraries for the ia32/i386
 architecture, configured for use on an amd64 or ia64 Debian system running
 a 64-bit kernel.
Original-Maintainer: Debian ia32-libs Team <email address hidden>

$ ldd /usr/lib32/gtk-2.0/modules/libcanberra-gtk-module.so
 linux-gate.so.1 => (0xf7f86000)
 libcanberra-gtk.so.0 => /usr/lib32/libcanberra-gtk.so.0 (0xf7f5b000)
 libgtk-x11-2.0.so.0 => /usr/lib32/libgtk-x11-2.0.so.0 (0xf7af3000)
 libgdk-x11-2.0.so.0 => /usr/lib32/libgdk-x11-2.0.so.0 (0xf7a44000)
 libatk-1.0.so.0 => /usr/lib32/libatk-1.0.so.0 (0xf7a27000)
 libpangoft2-1.0.so.0 => /usr/lib32/libpangoft2-1.0.so.0 (0xf79fd000)
 libgdk_pixbuf-2.0.so.0 => /usr/lib32/libgdk_pixbuf-2.0.so.0 (0xf79e1000)
 libpangocairo-1.0.so.0 => /usr/lib32/libpangocairo-1.0.so.0 (0xf79d4000)
 libgio-2.0.so.0 => /usr/lib32/libgio-2.0.so.0 (0xf7923000)
 libcairo.so.2 => /usr/lib32/libcairo.so.2 (0xf789c000)
 libpango-1.0.so.0 => /usr/lib32/libpango-1.0.so.0 (0xf7853000)
 libfreetype.so.6 => /usr/lib32/libfreetype.so.6 (0xf77d4000)
 libz.so.1 => /usr/lib32/libz.so.1 (0xf77be000)
 libfontconfig.so.1 => /usr/lib32/libfontconfig.so.1 (0xf7790000)
 libgobject-2.0.so.0 => /usr/lib32/libgobject-2.0.so.0 (0xf7749000)
 libgmodule-2.0.so.0 => /usr/lib32/libgmodule-2.0.so.0 (0xf7744000)
 libgthread-2.0.so.0 => /usr/lib32/libgthread-2.0.so.0 (0xf773e000)
 librt.so.1 => /lib32/librt.so.1 (0xf7735000)
 libglib-2.0.so.0 => /usr/lib32/libglib-2.0.so.0 (0xf7670000)
 libcanberra.so.0 => /usr/lib32/libcanberra.so.0 (0xf765e000)
 libvorbisfile.so.3 => /usr/lib32/libvorbisfile.so.3 (0xf7655000)
 libvorbis.so.0 => /usr/lib32/libvorbis.so.0 (0xf762a000)
 libogg.so.0 => /usr/lib32/libogg.so.0 (0xf7623000)
 libtdb.so.1 => /usr/lib32/libtdb.so.1 (0xf7614000)
 libltdl.so.7 => /usr/lib32/libltdl.so.7 (0xf760a000)
 libdl.so.2 => /lib32/libdl.so.2 (0xf7605000)
 libm.so.6 => /lib32/libm.so.6 (0xf75dd000)
 libpthread.so.0 => /lib32/libpthread.so.0 (0xf75c3000)
 libc.so.6 => /lib32/libc.so.6 (0xf746b000)
 libXext.so.6 => /usr/lib32/libXext.so.6 (0xf745b000)
 libXrender.so.1 => /usr/lib32/libXrender.so.1 (0xf7450000)
 libXinerama.so.1 => /usr/lib32/libXinerama.so.1 (0xf744d000)
 libXi.so.6 => /usr/lib32/libXi.so.6 (0xf7442000)
 libXrandr.so.2 => /usr/lib32/libXrandr.so.2 (0xf7439000)
 libXcursor.so.1 => /usr/lib32/libXcursor.so.1 (0xf742e000)
 libX11.so.6 => /usr/lib32/libX11.so.6 (0xf72ff000)
 libXcomposite.so.1 => /usr/lib32/libXcomposite.so.1 (0xf72fa000)
 libXdamage.so.1 =>...

Read more...

Alexander Sack (asac) wrote :
Download full text (4.6 KiB)

I think the current ia32libs update does not yet ship the proper links
to fix module loading. But that is comming on next upload i am sure.

However, that crash doesnt really look related to the modules. rather
pulseaudio. Need to talk to Daniel about what we need for that (though
flash sound works for me ... but that might be a different approach).

On Wed, Aug 12, 2009 at 11:37:12AM -0000, vak wrote:
> $ dpkg -s ia32-libs
> Package: ia32-libs
> Status: install ok installed
> Priority: extra
> Section: libs
> Installed-Size: 128088
> Maintainer: Ubuntu MOTU developers <email address hidden>
> Architecture: amd64
> Version: 2.7ubuntu10
> Replaces: ia32-libs-dev (<< 1.6), ia32-libs-openoffice.org, nvidia-glx-ia32 (<< 1.0.8774-7)
> Provides: ia32-libs-gtk, ia32-libs-sdl
> Depends: lsb-release, lib32gcc1, libc6-i386 (>= 2.3.6-2), lib32z1, lib32stdc++6, lib32asound2, lib32asound2-plugins, lib32bz2-1.0, lib32ncurses5, lib32v4l-0
> Pre-Depends: dpkg (>= 1.14.12ubuntu3)
> Conflicts: ia32-libs-dev (<< 1.6), nvidia-glx-ia32 (<< 1.0.8774-7)
> Description: ia32 shared libraries for use on amd64 and ia64 systems
> This package contains runtime libraries for the ia32/i386
> architecture, configured for use on an amd64 or ia64 Debian system running
> a 64-bit kernel.
> Original-Maintainer: Debian ia32-libs Team <email address hidden>
>
>
> $ ldd /usr/lib32/gtk-2.0/modules/libcanberra-gtk-module.so
> linux-gate.so.1 => (0xf7f86000)
> libcanberra-gtk.so.0 => /usr/lib32/libcanberra-gtk.so.0 (0xf7f5b000)
> libgtk-x11-2.0.so.0 => /usr/lib32/libgtk-x11-2.0.so.0 (0xf7af3000)
> libgdk-x11-2.0.so.0 => /usr/lib32/libgdk-x11-2.0.so.0 (0xf7a44000)
> libatk-1.0.so.0 => /usr/lib32/libatk-1.0.so.0 (0xf7a27000)
> libpangoft2-1.0.so.0 => /usr/lib32/libpangoft2-1.0.so.0 (0xf79fd000)
> libgdk_pixbuf-2.0.so.0 => /usr/lib32/libgdk_pixbuf-2.0.so.0 (0xf79e1000)
> libpangocairo-1.0.so.0 => /usr/lib32/libpangocairo-1.0.so.0 (0xf79d4000)
> libgio-2.0.so.0 => /usr/lib32/libgio-2.0.so.0 (0xf7923000)
> libcairo.so.2 => /usr/lib32/libcairo.so.2 (0xf789c000)
> libpango-1.0.so.0 => /usr/lib32/libpango-1.0.so.0 (0xf7853000)
> libfreetype.so.6 => /usr/lib32/libfreetype.so.6 (0xf77d4000)
> libz.so.1 => /usr/lib32/libz.so.1 (0xf77be000)
> libfontconfig.so.1 => /usr/lib32/libfontconfig.so.1 (0xf7790000)
> libgobject-2.0.so.0 => /usr/lib32/libgobject-2.0.so.0 (0xf7749000)
> libgmodule-2.0.so.0 => /usr/lib32/libgmodule-2.0.so.0 (0xf7744000)
> libgthread-2.0.so.0 => /usr/lib32/libgthread-2.0.so.0 (0xf773e000)
> librt.so.1 => /lib32/librt.so.1 (0xf7735000)
> libglib-2.0.so.0 => /usr/lib32/libglib-2.0.so.0 (0xf7670000)
> libcanberra.so.0 => /usr/lib32/libcanberra.so.0 (0xf765e000)
> libvorbisfile.so.3 => /usr/lib32/libvorbisfile.so.3 (0xf7655000)
> libvorbis.so.0 => /usr/lib32/libvorbis.so.0 (0xf762a000)
> libogg.so.0 => /usr/lib32/libogg.so.0 (0xf7623000)
> libtdb.so.1 => /usr/lib32/libtdb.so.1 (0xf7614000)
> libltdl.so.7 => /usr/lib32/libltdl.so.7 (0xf760a000)
> libdl.so.2 => /lib32/libdl.so.2 (0xf7605000)
> libm.so.6 => /lib32/libm.so.6 (0xf75dd000)
> libpthread.so.0 => /lib32/libpthread.so.0 (0xf75c3000)
> libc.so.6 => /...

Read more...

Alexander Sack wrote:
> I think the current ia32libs update does not yet ship the proper links
> to fix module loading. But that is comming on next upload i am sure.
>

The links that vak posted all look good though.

On Thu, Aug 13, 2009 at 01:05:35AM -0000, Scott Ritchie wrote:
> Alexander Sack wrote:
> > I think the current ia32libs update does not yet ship the proper links
> > to fix module loading. But that is comming on next upload i am sure.
> >
>
> The links that vak posted all look good though.
>

we dont have this yet:

ls -l /usr/lib/gtk-2.0/i486-pc-linux-gnu
lrwxrwxrwx 1 root root 19 2009-07-26 02:34
/usr/lib/gtk-2.0/i486-pc-linux-gnu -> /usr/lib32/gtk-2.0/

thats needed for gtk to get the other modules as well (but remember:
atk-bridge is bogus and needs to be removed from ia32libs when
introducing that link).

Also we need something simliar for gio - but there i am not so sure if
it also requires some glib code.

 - Alexander

qiuyao (qiuyaoboy) wrote :

We need this:
lrwxrwxrwx 1 root root 18 2009-08-26 21:42 i686-pc-linux-gnu -> /usr/lib32/gtk-2.0

Just creat a symbol link!

Tim Mann (ubuntu-tim-mann) wrote :

Just for people's information... #22 says:

> The alternative would be to add into user's or environment profile:
> export GTK_PATH=/usr/lib32/gtk-2.0:/usr/lib/gtk-2.0

I tried the above in my environment (in Jaunty), and it made acroread work but broke firefox. The 64-bit firefox 3.0.13 gives up on loading several libraries after trying only the 32-bit version, and so printing doesn't work:

Gtk-Message: Failed to load module "canberra-gtk-module": /usr/lib32/gtk-2.0/modules/libcanberra-gtk-module.so: wrong ELF class: ELFCLASS32
(firefox:28933): Gtk-WARNING **: /usr/lib32/gtk-2.0/2.10.0/engines/libglide.so: wrong ELF class: ELFCLASS32
Gtk-Message: Failed to load module "canberra-gtk-module": /usr/lib32/gtk-2.0/modules/libcanberra-gtk-module.so: wrong ELF class: ELFCLASS32
(firefox:28933): Gtk-WARNING **: /usr/lib32/gtk-2.0/2.10.0/engines/libglide.so: wrong ELF class: ELFCLASS32
(firefox:28933): Gtk-WARNING **: /usr/lib32/gtk-2.0/2.10.0/printbackends/libprintbackend-file.so: wrong ELF class: ELFCLASS32
(firefox:28933): Gtk-WARNING **: /usr/lib32/gtk-2.0/2.10.0/printbackends/libprintbackend-file.so: wrong ELF class: ELFCLASS32
(firefox:28933): Gtk-WARNING **: /usr/lib32/gtk-2.0/2.10.0/printbackends/libprintbackend-cups.so: wrong ELF class: ELFCLASS32
(firefox:28933): Gtk-WARNING **: /usr/lib32/gtk-2.0/2.10.0/printbackends/libprintbackend-cups.so: wrong ELF class: ELFCLASS32

***

Also, making the symlink described in #30 did not make acroread able to find the 32-bit canberra library. (Who builds things for "i486"?)

lrwxrwxrwx 1 root root 19 2009-08-26 12:55 /usr/lib/gtk-2.0/i486-pc-linux-gnu -> /usr/lib32/gtk-2.0/

This one did fix acroread:

lrwxrwxrwx 1 root root 19 2009-08-26 12:56 /usr/lib/gtk-2.0/i686-pc-linux-gnu -> /usr/lib32/gtk-2.0/

ktp420 (ktp420) wrote :

i am wondering how to fix the gio...creating links in /usr/lib/gio/modules did not work.

Download full text (5.0 KiB)

Hi,

As I wrote on duplicate bug
https://bugs.launchpad.net/ubuntu/+source/gtk+2.0/+bug/369123 ,
I have a message like this when starting some programs :

$ /opt/seamonkey_b1/seamonkey --version
Mozilla SeaMonkey 2.0b1, Copyright (c) 1998-2009 mozilla.org
$ /opt/seamonkey_b1/seamonkey
Gtk-Message: Failed to load module "canberra-gtk-module":
/usr/lib/gtk-2.0/modules/libcanberra-gtk-module.so: mauvaise classe ELF:
ELFCLASS64
/usr/lib/gio/modules/libgioremote-volume-monitor.so: mauvaise classe
ELF: ELFCLASS64

Scott Ritchie a tapoté, le 12/08/2009 12:30:
> Please:
> dpkg -s ia32-libs
>

$ dpkg -s ia32-libs
Package: ia32-libs
Status: install ok installed
Priority: extra
Section: libs
Installed-Size: 125044
Maintainer: Ubuntu MOTU developers <email address hidden>
Architecture: amd64
Version: 2.7ubuntu6.1
Replaces: ia32-libs-dev (<< 1.6), ia32-libs-openoffice.org,
nvidia-glx-ia32 (<< 1.0.8774-7)
Provides: ia32-libs-gtk, ia32-libs-sdl
Depends: lsb-release, lib32gcc1, libc6-i386 (>= 2.3.6-2), lib32z1,
lib32stdc++6, lib32asound2, lib32ncurses5
Pre-Depends: dpkg (>= 1.14.12ubuntu3)
Conflicts: ia32-libs-dev (<< 1.6), nvidia-glx-ia32 (<< 1.0.8774-7)
Description: ia32 shared libraries for use on amd64 and ia64 systems
 This package contains runtime libraries for the ia32/i386
 architecture, configured for use on an amd64 or ia64 Debian system running
 a 64-bit kernel.
Original-Maintainer: Debian ia32-libs Team
<email address hidden>
> And:
> ldd /usr/lib32/gtk-2.0/modules/libcanberra-gtk-module.so
>

$ ldd /usr/lib32/gtk-2.0/modules/libcanberra-gtk-module.so
    linux-gate.so.1 => (0xf7f01000)
    libcanberra-gtk.so.0 => /usr/lib32/libcanberra-gtk.so.0 (0xf7edb000)
    libgtk-x11-2.0.so.0 => /usr/lib32/libgtk-x11-2.0.so.0 (0xf7b2a000)
    libgdk-x11-2.0.so.0 => /usr/lib32/libgdk-x11-2.0.so.0 (0xf7a9c000)
    libatk-1.0.so.0 => /usr/lib32/libatk-1.0.so.0 (0xf7a81000)
    libpangoft2-1.0.so.0 => /usr/lib32/libpangoft2-1.0.so.0 (0xf7a58000)
    libgdk_pixbuf-2.0.so.0 => /usr/lib32/libgdk_pixbuf-2.0.so.0 (0xf7a3e000)
    libpangocairo-1.0.so.0 => /usr/lib32/libpangocairo-1.0.so.0 (0xf7a32000)
    libgio-2.0.so.0 => /usr/lib32/libgio-2.0.so.0 (0xf79c3000)
    libcairo.so.2 => /usr/lib32/libcairo.so.2 (0xf7949000)
    libpango-1.0.so.0 => /usr/lib32/libpango-1.0.so.0 (0xf7906000)
    libfreetype.so.6 => /usr/lib32/libfreetype.so.6 (0xf788f000)
    libz.so.1 => /usr/lib32/libz.so.1 (0xf7879000)
    libfontconfig.so.1 => /usr/lib32/libfontconfig.so.1 (0xf784b000)
    libgobject-2.0.so.0 => /usr/lib32/libgobject-2.0.so.0 (0xf780d000)
    libgmodule-2.0.so.0 => /usr/lib32/libgmodule-2.0.so.0 (0xf7808000)
    libgthread-2.0.so.0 => /usr/lib32/libgthread-2.0.so.0 (0xf7802000)
    librt.so.1 => /lib32/librt.so.1 (0xf77f9000)
    libglib-2.0.so.0 => /usr/lib32/libglib-2.0.so.0 (0xf7741000)
    libcanberra.so.0 => /usr/lib32/libcanberra.so.0 (0xf7731000)
    libvorbisfile.so.3 => /usr/lib32/libvorbisfile.so.3 (0xf7728000)
    libvorbis.so.0 => /usr/lib32/libvorbis.so.0 (0xf76fe000)
    libogg.so.0 => /usr/lib32/libogg.so.0 (0xf76f8000)
    libtdb.so.1 => /usr/lib32/libtdb.so.1 (0xf76ea000)
    libltdl.so.7 => /usr/lib32/l...

Read more...

dr.spock (dr.spock) wrote :

> This one did fix acroread:
>
> lrwxrwxrwx 1 root root 19 2009-08-26 12:56 /usr/lib/gtk-2.0/i686-pc-linux-gnu -> /usr/lib32/gtk-2.0/

Yes, it fixed it for me too.

And quoting myself:

> sorry:
>
> "rm:2 and "cp:" lines are due to a previous execution with sudo. If I manually delete "prefs.js", result is the same last lines "(acroread-en: ...."
>
> As you can see, my user id is too high. That's because I joined a Windows domain with likewise-open, but I don't know if it has something to do with the problem.

I solved this installing the nscd daemon.

Mingming Ren (portis25) wrote :

For me, creating /usr/lib/gtk-2.0/i686-pc-linux-gnu -> /usr/lib32/gtk-2.0/ does not help.
Instead, creating /usr/lib/gtk-2.0/i486-pc-linux-gnu -> /usr/lib32/gtk-2.0/ solves the problem.

qiuyao (qiuyaoboy) wrote :

Actually,I found we need two links at least.

First
lrwxrwxrwx 1 root root 18 2009-08-29 14:12 /usr/lib/gtk-2.0/i686-pc-linux-gnu -> /usr/lib32/gtk-2.0
Second
lrwxrwxrwx 1 root root 25 2009-08-29 15:18 /usr/lib/gtk-2.0/2.10.0/i686-pc-linux-gnu -> /usr/lib32/gtk-2.0/2.10.0

On Wed, Aug 26, 2009 at 08:08:41PM -0000, Tim Mann wrote:
> Just for people's information... #22 says:
>
> > The alternative would be to add into user's or environment profile:
> > export GTK_PATH=/usr/lib32/gtk-2.0:/usr/lib/gtk-2.0
>
> I tried the above in my environment (in Jaunty), and it made acroread
> work but broke firefox. The 64-bit firefox 3.0.13 gives up on loading
> several libraries after trying only the 32-bit version, and so printing
> doesn't work:
>
> Gtk-Message: Failed to load module "canberra-gtk-module": /usr/lib32/gtk-2.0/modules/libcanberra-gtk-module.so: wrong ELF class: ELFCLASS32
> (firefox:28933): Gtk-WARNING **: /usr/lib32/gtk-2.0/2.10.0/engines/libglide.so: wrong ELF class: ELFCLASS32
> Gtk-Message: Failed to load module "canberra-gtk-module": /usr/lib32/gtk-2.0/modules/libcanberra-gtk-module.so: wrong ELF class: ELFCLASS32
> (firefox:28933): Gtk-WARNING **: /usr/lib32/gtk-2.0/2.10.0/engines/libglide.so: wrong ELF class: ELFCLASS32
> (firefox:28933): Gtk-WARNING **: /usr/lib32/gtk-2.0/2.10.0/printbackends/libprintbackend-file.so: wrong ELF class: ELFCLASS32
> (firefox:28933): Gtk-WARNING **: /usr/lib32/gtk-2.0/2.10.0/printbackends/libprintbackend-file.so: wrong ELF class: ELFCLASS32
> (firefox:28933): Gtk-WARNING **: /usr/lib32/gtk-2.0/2.10.0/printbackends/libprintbackend-cups.so: wrong ELF class: ELFCLASS32
> (firefox:28933): Gtk-WARNING **: /usr/lib32/gtk-2.0/2.10.0/printbackends/libprintbackend-cups.so: wrong ELF class: ELFCLASS32

some modules are just not in the ia32libs package. in karmic we added
more and if you want more to be added file bugs against ia32libs with
a rational why to add those.

Also the i486-... link is currently created properly in karmic
afaik. If not, we should definitly add it. But remember to remove
atk-bridge at least which is known to break 32-bit adobe flash.

 - Alexander

Alexander Sack (asac) wrote :

On Wed, Aug 26, 2009 at 01:48:43PM -0000, qiuyao wrote:
> We need this:
> lrwxrwxrwx 1 root root 18 2009-08-26 21:42 i686-pc-linux-gnu -> /usr/lib32/gtk-2.0

we do this since karmic afaik. Not sure if we should look into
backporting that or even SRUing. But I don't think so because making
those modules appear would also require carefully reviewing all apps
that might get negatively influenced by any of the currently shipped
modules.

 - Alexander

eris23 (jdkatz23) wrote :

on emusic-remote 1.0.0.2ds2-2
Gtk-Message: Failed to load module "canberra-gtk-module": /usr/lib/gtk-2.0/modules/libcanberra-gtk-module.so: wrong ELF class: ELFCLASS64
Gtk-Message: Failed to load module "pk-gtk-module": /usr/lib/gtk-2.0/modules/libpk-gtk-module.so: wrong ELF class: ELFCLASS64

Pepote (pepotegg) wrote :

I solved the problem with a symbolink link. If Acroread is loaded using full path to install binary, GTK engines isn't loaded, but if you link this binary to /usr/bin/acroread and launch it with "acroread" all works OK.

Scott Ritchie (scottritchie) wrote :

So, looking at debian/rules, it seems there is code intending for these symlinks to be created, but it isn't working:

 sed -i 's,/usr/lib/,/usr/lib32/,g' debian/ia32-libs/usr/lib32/gtk-2.0/2.10.0/*.d/*

 dh_link -pia32-libs /usr/lib32/gtk-2.0/2.10.0 /usr/lib/gtk-2.0/2.10.0/i486-pc-linux-gnu

Scott Ritchie (scottritchie) wrote :

Alexandre, are you saying that libatk1.0-0 should be removed from ia32-libs? Is it doing anything other than causing breakage at the moment?

Alexander Sack (asac) wrote :

On Mon, Sep 07, 2009 at 07:11:52PM -0000, Scott Ritchie wrote:
> So, looking at debian/rules, it seems there is code intending for these
> symlinks to be created, but it isn't working:
>
> sed -i 's,/usr/lib/,/usr/lib32/,g'
> debian/ia32-libs/usr/lib32/gtk-2.0/2.10.0/*.d/*

this replaces text files and should be all right.

>
> dh_link -pia32-libs /usr/lib32/gtk-2.0/2.10.0
> /usr/lib/gtk-2.0/2.10.0/i486-pc-linux-gnu
>

Here we need two links:

  /usr/lib/gtk-2.0/2.10.0/i486-pc-linux-gnu -> /usr/lib32/gtk-2.0/2.10.0/

AND

  /usr/lib/gtk-2.0/i486-pc-linux-gnu -> /usr/lib32/gtk-2.0/

you can check that in gtk/gtkmodules.c in _get_modules_path.

If you say get_modules_path ("engines") you will get
/usr/lib/gtk-2.0/2.10.0/i486-pc-linux-gnu/engines or
/usr/lib/gtk-2.0/2.10.0/engines

If you say get_modules_path ("modules") you will get
/usr/lib/gtk-2.0/i486-pc-linux-gnu/modules or
/usr/lib/gtk-2.0/modules

thx

 - Alexander

Alexander Sack (asac) wrote :

On Mon, Sep 07, 2009 at 07:17:22PM -0000, Scott Ritchie wrote:
> Alexandre, are you saying that libatk1.0-0 should be removed from
> ia32-libs? Is it doing anything other than causing breakage at the
> moment?
>

yes, when adding the second link you need to drop atk as otherwise all
32-bit apps will crash.

If you do this, please check that the 32-bit flash is still working on
64-bit? I think we had some issues with that plugin last time we
looked into fixing that link.

 - Alexander

Alexander Sack (asac) wrote :

for gio we need a glib patch like the one attached I would think.

on top a similar link from /usr/lib/gio/modules/i486-... -> /usr/lib32/gio/modules

For testing purpose I uploaded a glib package to my sandbox ppa with the patch applied.

   https://edge.launchpad.net/~asac/+archive/sandbox

Warning: This is all untested so unless you can check main apps like firefox upstream, skype and flash 32 bits, i would suggest to upload the gtk modules fix first and then do some proper testing on this gio feature for next upload.

Alexander Sack (asac) wrote :

the glib version uploaded for this is: glib2.0 - 2.21.5-0ubuntu3.asac1

Alexander Sack (asac) wrote :

On Mon, Sep 07, 2009 at 07:17:22PM -0000, Scott Ritchie wrote:
> Alexandre, are you saying that libatk1.0-0 should be removed from
> ia32-libs? Is it doing anything other than causing breakage at the
> moment?
>

sorry, misread this ... libatk is OK ... its about the "atk-bridge"
module - that one has to go.

 - Alexander

Alexander Sack (asac) wrote :

anyone could take a stab at this please?

Alexander Sack (asac) wrote :

i think fta has no time for this atm. unassigning.

Changed in ia32-libs (Ubuntu):
assignee: Fabien Tassin (fta) → nobody
Scott Ritchie (scottritchie) wrote :

I've been trying to tackle it however I can't update ia32-libs as the python2.6 build and source packages were not in sync due to python2.6 FTBFS: https://bugs.launchpad.net/ubuntu/+source/python2.6/+bug/426581

It looks like it's fixed now so I can take this bug again.

Changed in ia32-libs (Ubuntu):
assignee: nobody → Scott Ritchie (scottritchie)
trendzetter (trendzetter) wrote :

After adding the symlink suggested above the libcanberra error is gone but I still get errors about gio:
/usr/lib/gio/modules/libgioremote-volume-monitor.so: wrong ELF class: ELFCLASS64
Failed to load module: /usr/lib/gio/modules/libgioremote-volume-monitor.so
/usr/lib/gio/modules/libgiogconf.so: wrong ELF class: ELFCLASS64
Failed to load module: /usr/lib/gio/modules/libgiogconf.so
/usr/lib/gio/modules/libgvfsdbus.so: wrong ELF class: ELFCLASS64
Failed to load module: /usr/lib/gio/modules/libgvfsdbus.so

I tried the PPA by Alexander Sack with the libglib2 build but it does not solve the bug for me.

Scott Ritchie (scottritchie) wrote :

trendzetter that seems to be a separate problem due to a lack of 32 bit versions of gvfs -- we may be able to add that to ia32-libs as well, though I don't know if that might provoke other issues like in the gtk case.

trendzetter (trendzetter) wrote :

Is there anything I can do to help out? Any tips on how I could try to build custom deps myself?

Tyrael (marco-crociani) wrote :

Karmic
ia32-libs 2.7ubuntu12

firefox with flash player

Gtk-Message: Failed to load module "canberra-gtk-module": /usr/lib/gtk-2.0/modules/libcanberra-gtk-module.so: classe ELF errata: ELFCLASS64

What are the links I need to make?

trendzetter (trendzetter) wrote :

Tyrael:
cd /usr/lib/gtk-2.0/i686-pc-linux-gnu
sudo ln -s /usr/lib32/gtk-2.0/ i686-pc-linux-gnu
sudo ln -s /usr/lib32/gtk-2.0/ i486-pc-linux-gnu

Launchpad Janitor (janitor) wrote :

This bug was fixed in the package ia32-libs - 2.7ubuntu13

---------------
ia32-libs (2.7ubuntu13) karmic; urgency=low

  * debian/rules:
    - add symbolic links for gtk-2.0, remove atk-bridge (LP: #369498)
  * Add libmpg123-0
  * Add libgstreamer0.10-0 and libgstreamer-plugins-base0.10-0 (LP: #244952)
  * Freshen packages (hopefully fixes LP: #425863)

 -- Scott Ritchie <email address hidden> Sat, 12 Sep 2009 08:42:21 -0700

Changed in ia32-libs (Ubuntu):
status: In Progress → Fix Released
Alexander Sack (asac) wrote :

On Fri, Sep 11, 2009 at 09:48:37AM -0000, trendzetter wrote:
> After adding the symlink suggested above the libcanberra error is gone but I still get errors about gio:
> /usr/lib/gio/modules/libgioremote-volume-monitor.so: wrong ELF class: ELFCLASS64
> Failed to load module: /usr/lib/gio/modules/libgioremote-volume-monitor.so
> /usr/lib/gio/modules/libgiogconf.so: wrong ELF class: ELFCLASS64
> Failed to load module: /usr/lib/gio/modules/libgiogconf.so
> /usr/lib/gio/modules/libgvfsdbus.so: wrong ELF class: ELFCLASS64
> Failed to load module: /usr/lib/gio/modules/libgvfsdbus.so
>
> I tried the PPA by Alexander Sack with the libglib2 build but it does
> not solve the bug for me.
>

Not sure if you tried the right thing. What this involves is basically:

unpack the 32-bit libglib2 from my ppa somewhere and copy
/path/to/unpack/usr/lib to /usr/lib32

Also you need to create a link similar to the gtk one ... just in
gio. Have you tested that?

 - Alexander

Scott Ritchie (scottritchie) wrote :

Resetting in progress as the glib change needs to be tested too.

Changed in ia32-libs (Ubuntu):
status: Fix Released → In Progress
trendzetter (trendzetter) wrote :

Hello Alexander
I'm trying to figure out how to test it. This is what I did:
cd /usr/lib/gio
ln -s /usr/lib32/gio/ i486-pc-linux-gnu
ln -s /usr/lib32/gio/ i686-pc-linux-gnu

Than I downloaded some files (libglib2.0-0_2.21.5-0ubuntu3.asac1_i386.deb) from https://edge.launchpad.net/~asac/+archive/sandbox/+packages and extracted the contents. Than copied it to /usr/lib32
Shouldn't there be libgiogconf.so, libgioremote-volume-monitor.so, libgvfsdbus.so in /usr/lib32/gio/modules/ ? I didn't find them in your archives.

Alexander Sack (asac) wrote :

On Mon, Sep 14, 2009 at 04:37:03PM -0000, trendzetter wrote:
> Hello Alexander
> I'm trying to figure out how to test it. This is what I did:
> cd /usr/lib/gio
> ln -s /usr/lib32/gio/ i486-pc-linux-gnu
> ln -s /usr/lib32/gio/ i686-pc-linux-gnu

iirc this is supposed to be inside the gio/modules dir ... and not top
level gio/

>
> Than I downloaded some files (libglib2.0-0_2.21.5-0ubuntu3.asac1_i386.deb) from https://edge.launchpad.net/~asac/+archive/sandbox/+packages and extracted the contents. Than copied it to /usr/lib32
> Shouldn't there be libgiogconf.so, libgioremote-volume-monitor.so, libgvfsdbus.so in /usr/lib32/gio/modules/ ? I didn't find them in your archives.
>

those are shipped by the ia32-libs package. you i think its in gvfs
package. take those and put them manually in the 32 bit modules dir to
test.

 - Alexander

qiuyao (qiuyaoboy) wrote :

After update glibs from Alexander's packages,I still can't fix the gio problems.
Can you show the correct symbio symbol links,Alexander? Thanks.

This is mine,but it can't fix the gio errors.

lrwxrwxrwx 1 root root 15 2009-09-15 23:44 i486-pc-linux-gnu -> /usr/lib32/gio/
lrwxrwxrwx 1 root root 15 2009-09-15 23:44 i686-pc-linux-gnu -> /usr/lib32/gio/
drwxr-xr-x 2 root root 4096 2009-09-15 23:43 modules
qiuyao@qiuyao-laptop:/usr/lib/gio$

lrwxrwxrwx 1 root root 23 2009-09-15 23:43 i486-pc-linux-gnu -> /usr/lib32/gio/modules/
lrwxrwxrwx 1 root root 23 2009-09-15 23:41 i686-pc-linux-gnu -> /usr/lib32/gio/modules/
qiuyao@qiuyao-laptop:/usr/lib/gio/modules$

trendzetter (trendzetter) wrote :

The links seem to have little influence. I have added them now
cd /usr/lib/gio/modules
ln -s /usr/lib32/gio/modules i686-pc-linux-gnu
ln -s /usr/lib32/gio/modules i686-pc-linux-gnu

I have copied the gvfs files in 32bit version from a chroot on my machine. I was still unable to locate the (gvfs) packages you created that contain these files.

/usr/lib/gio/modules/libgioremote-volume-monitor.so: wrong ELF class: ELFCLASS64
Failed to load module: /usr/lib/gio/modules/libgioremote-volume-monitor.so
/usr/lib/gio/modules/libgiogconf.so: wrong ELF class: ELFCLASS64
Failed to load module: /usr/lib/gio/modules/libgiogconf.so
/usr/lib/gio/modules/libgvfsdbus.so: wrong ELF class: ELFCLASS64
Failed to load module: /usr/lib/gio/modules/libgvfsdbus.so

qiuyao (qiuyaoboy) wrote :

I guess the gio problem might be due to gtk2-engines. After install gtk2-engines-nimbus, and apply it. The gio problem disappears.

I downloaded the nimbus theme from:
http://ubuntu-art.org/content/show.php/Nimbus+(+Debian+and+Ubuntu+packages+)?content=70212

trendzetter (trendzetter) wrote :

I managed to get the app I wanted (Borland Together) by reinstalling it. I am still getting the gio failed to load messages in the terminal but it is starting and everything is fully functional as far as I can see.

Jack Storm (jstorm) wrote :

Since it has been 5+ months since this bug was opened, I suggest that all effected, and affected packages be removed from the 9.x verse and forward

sample packages:

firefox
thunderbird
gimp
openoffice
perl

and all other packages that support plugins / restricted / 3rd party downloads

Scott Ritchie (scottritchie) wrote :

Jack please don't make useless sarcastic comments. Alexandre and I have fixed most of the issues through ia32-libs updates, so please don't act like we're ignoring you.

Launchpad Janitor (janitor) wrote :

This bug was fixed in the package ia32-libs - 2.7ubuntu16

---------------
ia32-libs (2.7ubuntu16) karmic; urgency=low

  * Freshen packages
  * Add gvfs and symlinks for gio (LP: #369498)
  * Remove libfltk1.1 as it is FTBFS and we can't update it in time for karmic

 -- Scott Ritchie <email address hidden> Mon, 12 Oct 2009 16:01:06 -0700

Changed in ia32-libs (Ubuntu):
status: In Progress → Fix Released
mannheim (kronheim) wrote :

I have ia32-libs version 2.7ubuntu17 in karmic, and still have a problem. The symbolic links are there:

ls -l /usr/lib/gio/modules/
total 272
lrwxrwxrwx 1 root root 26 2009-10-24 22:06 i486-pc-linux-gnu -> ../../../lib32/gio/modules
lrwxrwxrwx 1 root root 26 2009-10-24 22:06 i686-pc-linux-gnu -> ../../../lib32/gio/modules
-rw-r--r-- 1 root root 10344 2009-10-19 23:58 libgiogconf.so
-rw-r--r-- 1 root root 81120 2009-10-19 23:58 libgioremote-volume-monitor.so
-rw-r--r-- 1 root root 173008 2009-10-19 23:58 libgvfsdbus.so

and the 32-bit libraries are here:

ls -l /usr/lib32/gio/modules/
total 364
-rw-r--r-- 1 root root 9552 2009-10-19 23:58 libgiogconf.so
-rw-r--r-- 1 root root 119688 2008-08-09 09:32 libgiohal-volume-monitor.so
-rw-r--r-- 1 root root 71588 2009-10-19 23:58 libgioremote-volume-monitor.so
-rw-r--r-- 1 root root 150280 2009-10-19 23:58 libgvfsdbus.so

but when I launch the 32-bit application "amazonmp3" I still get:

/usr/lib/gio/modules/libgvfsdbus.so: wrong ELF class: ELFCLASS64
Failed to load module: /usr/lib/gio/modules/libgvfsdbus.so
/usr/lib/gio/modules/libgioremote-volume-monitor.so: wrong ELF class: ELFCLASS64
Failed to load module: /usr/lib/gio/modules/libgioremote-volume-monitor.so
/usr/lib/gio/modules/libgiogconf.so: wrong ELF class: ELFCLASS64
Failed to load module: /usr/lib/gio/modules/libgiogconf.so

Apologies in advance if this is no longer a bug that should be reported against ia32-libs.

Jason Brooks (jasonbrooks) wrote :

I'm having the same issue as mannheim, with 64-bit karmic and Adobe Air. Air installs, complains about the gio libs, and Tweetdeck won't work. All the symlinks and libs that mannheim mentions are in place on my system as well.

Alexander Sack (asac) wrote :

On Tue, Oct 27, 2009 at 06:27:00PM -0000, Jason Brooks wrote:
> I'm having the same issue as mannheim, with 64-bit karmic and Adobe Air.
> Air installs, complains about the gio libs, and Tweetdeck won't work.
> All the symlinks and libs that mannheim mentions are in place on my
> system as well.

the glib part is known to be not fixed. the gtk+ part of this bug is fixed
however.

Please no more me toos for gio modules, until we put up a new package to
test

 - Alexander

Something extra that I think is related to this that I'm running into from Eclipse of all places.
-------
/usr/lib/gio/modules/libgioremote-volume-monitor.so: wrong ELF class: ELFCLASS64
Failed to load module: /usr/lib/gio/modules/libgioremote-volume-monitor.so
/usr/lib/gio/modules/libgvfsdbus.so: wrong ELF class: ELFCLASS64
Failed to load module: /usr/lib/gio/modules/libgvfsdbus.so
/usr/lib/gio/modules/libgiogconf.so: wrong ELF class: ELFCLASS64
Failed to load module: /usr/lib/gio/modules/libgiogconf.so
--------

Got that one several times and this is running the 32-bit version of eclipse on an AMD64 with all packages up to date
Here's the ia32-libs package

--------
root@kakashi:/usr/lib32/gio/modules# dpkg -s ia32-libs
Package: ia32-libs
Status: install ok installed
Priority: extra
Section: libs
Installed-Size: 128720
Maintainer: Ubuntu MOTU developers <email address hidden>
Architecture: amd64
Version: 2.7ubuntu17
Replaces: ia32-libs-dev (<< 1.6), ia32-libs-openoffice.org, nvidia-glx-ia32 (<< 1.0.8774-7)
Provides: ia32-libs-gtk, ia32-libs-sdl
Depends: lsb-release, lib32gcc1, libc6-i386 (>= 2.3.6-2), lib32z1, lib32stdc++6, lib32asound2, lib32bz2-1.0, lib32ncurses5, lib32v4l-0
Pre-Depends: dpkg (>= 1.14.12ubuntu3)
Conflicts: ia32-libs-dev (<< 1.6), lib32asound2-plugins, nvidia-glx-ia32 (<< 1.0.8774-7)
Description: ia32 shared libraries for use on amd64 and ia64 systems
 This package contains runtime libraries for the ia32/i386
 architecture, configured for use on an amd64 or ia64 Debian system running
 a 64-bit kernel.
Original-Maintainer: Debian ia32-libs Team <email address hidden>
--------

And here's something interesting that I found while digging

--------
root@kakashi:/usr/lib32/gio/modules# for i in *
> do
> echo $i
> ldd $i | grep "not found"
> done
libgiogconf.so
libgioremote-volume-monitor.so
 libgvfscommon.so.0 => not found
libgvfsdbus.so
 libgvfscommon.so.0 => not found
--------

This would at least explain why I'm getting the errors, but I have no idea where to go looking for a 32-bit version of libgcfscommon.so.0 now. The only library I'm seeing of that is the 64-bit version. Hopefully I'm just missing something obvious.

-Paul

jlp (jan-l-peterson) wrote :

I'm seeing a similar problem to Paul. I've got Ubuntu 9.10 Karmic, latest upgrades applied. I'm trying to run the Motorola MOTODEV Studio for Android (based on Eclipse). This app requires 32-bit java, and stupidly doesn't pay attention to the JAVA_HOME environment variable so i have to set my system default java version to the 32-bit java (ia32-sun-java6-bin). The app also doesn't find any of the libraries in /usr/lib32, so I have to force it with LD_LIBRARY_PATH and LD_PRELOAD, which I can handle. Then the problem appears where it throws this error:

./motodevstudio: error while loading shared libraries: libgvfscommon.so.0: cannot open shared object file: No such file or directory

sure enough, there is no libgvfscommon.so in /usr/lib32, even though the lib32 versions of libgioremote-volume-monitor.so and libgvfsdbus.so (provided by ia32-libs) seem to require it.

Shouldn't libgvfscommon.so also be provided by ia32-libs? I have ia32-libs version 2.7ubuntu17.

ktp420 (ktp420) wrote :

I am also seeing following in updated 9.10:

libgnomevfs-WARNING **: Cannot load module `/usr/lib/gnome-vfs-2.0/modules/libfile.so' (/usr/lib/gnome-vfs-2.0/modules/libfile.so: wrong ELF class: ELFCLASS64)

Aron Xu (happyaron) wrote :

I still see this problem in 10.04.1.

LC Bruzenak (lenny-bruzenak) wrote :

I see this on one 10.04 machine but not another. The GTK_MODULES on the failing one is:
GTK_MODULES=canberra-gtk-module:gail:atk-bridge
and on the succeeding one is:
GTK_MODULES=canberra-gtk-module

But changing the env and relaunching in a terminal doesn't help much:

$ skype --version
Gtk-Message: Failed to load module "atk-bridge": /usr/lib/gtk-2.0/modules/libatk-bridge.so: wrong ELF class: ELFCLASS64
Gtk-Message: Failed to load module "atk-bridge": /usr/lib/gtk-2.0/modules/libatk-bridge.so: wrong ELF class: ELFCLASS64
Skype 2.1.0.81
Copyright (c) 2004-2009, Skype Limited

(then change to be like on the machine which works; note 1 less error)
$ export GTK_MODULES=canberra-gtk-module
$ skype --version
Gtk-Message: Failed to load module "atk-bridge": /usr/lib/gtk-2.0/modules/libatk-bridge.so: wrong ELF class: ELFCLASS64
Skype 2.1.0.81
Copyright (c) 2004-2009, Skype Limited

All packages/libs listed above appear to be similar otherwise on the 2 machines. Same skype version too.

yamo (stephane-gregoire) wrote :

Hi,

On Ubuntu 10.04.1 I don't have this bug :

$ skype --version

Skype 2.1.0.81
Copyright (c) 2004-2009, Skype Limited
$ lsb_release -rd
Description: Ubuntu 10.04.1 LTS
Release: 10.04

I had it on Ubuntu 9.04.

Changed in glib:
importance: Unknown → Medium
Changed in gtk:
importance: Unknown → Medium
Kane Zhu (kane-mx) wrote :

I also see similar problem on Ubuntu 10.04 64-bit.

I launch my gtk application from NFS mount point, then click the 'Browser' button of my application to open directory picker.

Then got below errors,

/usr/lib/gio/modules/libgioremote-volume-monitor.so: wrong ELF class: ELFCLASS64
Failed to load module: /usr/lib/gio/modules/libgioremote-volume-monitor.so
/usr/lib/gio/modules/libgvfsdbus.so: wrong ELF class: ELFCLASS64
Failed to load module: /usr/lib/gio/modules/libgvfsdbus.so
/usr/lib/gio/modules/libgiogconf.so: wrong ELF class: ELFCLASS64
Failed to load module: /usr/lib/gio/modules/libgiogconf.so

I have installed ia32-libs, and update it to latest.
I think it's caused by 32bit libgvfscommon doesn't exist that is required by libgioremote-volume-monitor.so.

ldd /usr/lib32/gio/modules/libgioremote-volume-monitor.so
 linux-gate.so.1 => (0xf77b2000)
 libgvfscommon.so.0 => not found
 libdbus-1.so.3 => /lib32/libdbus-1.so.3 (0xf774b000)

Hope to reopen this one to get that fixing.

Rich Wohlstadter (rwohlsta) wrote :

We just ran across this today.

problem: 32bit gtk2 apps that link with /usr/lib32/libgio-2.0.so.0.2400.1 will throw these errors:

/usr/lib/gio/modules/libgiogconf.so: wrong ELF class: ELFCLASS64
Failed to load module: /usr/lib/gio/modules/libgiogconf.so
/usr/lib/gio/modules/libgvfsdbus.so: wrong ELF class: ELFCLASS64
Failed to load module: /usr/lib/gio/modules/libgvfsdbus.so
/usr/lib/gio/modules/libgioremote-volume-monitor.so: wrong ELF class: ELFCLASS64
Failed to load module: /usr/lib/gio/modules/libgioremote-volume-monitor.so

I did a 'strings /usr/lib32/libgio-2.0.so.0.2400.1' | grep 'gio/module' and see that the 32bit library is linking to /usr/lib/gio/modules instead of /usr/lib32/gio/modules so its trying to incorrectly load the 64bit libraries.

Martin Pitt (pitti) on 2011-01-07
Changed in glib2.0 (Ubuntu):
assignee: Alexander Sack (asac) → nobody
status: In Progress → Triaged
apetrelli (antonio-petrelli) wrote :

Same as comment #79 in Natty, with the difference that the file is:
libgio-2.0.so.0.2600.0

Kenneth (krcabrer) wrote :

I got this message in RStudio v 0.93.84 on ubuntu 10.04 LTS when I use the "Compile PDF" option and
the system show me the .pdf file with acrobat v 9.4.2 (02/11/2011).

Gtk-Message: Failed to load module "atk-bridge": /usr/lib/gtk-2.0/modules/libatk-bridge.so: clase ELF errónea: ELFCLASS64
Gtk-Message: Failed to load module "atk-bridge": /usr/lib/gtk-2.0/modules/libatk-bridge.so: clase ELF errónea: ELFCLASS64

But at least it is working...

Thank you for any hint.

Kenneth (krcabrer) wrote :

skype --version

Gtk-Message: Failed to load module "atk-bridge": /usr/lib/gtk-2.0/modules/libatk-bridge.so: wrong ELF class: ELFCLASS64
Gtk-Message: Failed to load module "atk-bridge": /usr/lib/gtk-2.0/modules/libatk-bridge.so: wrong ELF class: ELFCLASS64
Skype 2.2.0.25
Copyright (c) 2004-2011, Skype Limited

acroread
Gtk-Message: Failed to load module "atk-bridge": /usr/lib/gtk-2.0/modules/libatk-bridge.so: wrong ELF class: ELFCLASS64
Gtk-Message: Failed to load module "atk-bridge": /usr/lib/gtk-2.0/modules/libatk-bridge.so: wrong ELF class: ELFCLASS64

Is this problem associated with foxit reader that I force to install in my 64AMD UBUNTU 10.04 configuration?

Thank you for your help.

Luis Mondesi (lemsx1) wrote :

Same as comment #79 and #80

$> lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description: Ubuntu 11.04
Release: 11.04
Codename: natty

$> strings /usr/lib32/libgio-2.0.so.0.2800.6 |grep 'gio/module'
/usr/lib/gio/modules
/usr/lib/i386-linux-gnu/gio/modules
$> ls -l /usr/lib/i386-linux-gnu
ls: cannot access /usr/lib/i386-linux-gnu: No such file or directory

$> uname -a
Linux ubuntu 2.6.38-8-generic #42-Ubuntu SMP Mon Apr 11 03:31:24 UTC 2011 x86_64 x86_64 x86_64 GNU/Linux

$> dpkg --list ia32-libs
...
ii ia32-libs 20090808ubuntu ia32 shared libraries for use on amd64 and i

Please fix.

Changed in gtk:
status: New → Incomplete
Jerry Lu (jerrylu2008) wrote :

It is a similar issue with BUG#619293.

After upgraded ia32-libs from 2.7ubuntu26.1 with Ubuntu 10.04.02 to 2.7ubuntu26.2 from lucid-proposed.
/usr/lib32/libgvfscommon.so.0 is back.
But looks like libgio-2.0.so.0.2400.1 looks for modules in /usr/lib/gio/modules instead of /usr/lib32/gio/modules.
The error messages 'wrong ELF class: ELFCLASS64' is still there.

Thanks,
Jerry

Changed in gtk:
status: Incomplete → Expired
To post a comment you must log in.
This report contains Public information  Edit
Everyone can see this information.

Duplicates of this bug

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.