FS#18687 - lib32-gtk2 looks for theme engines in the wrong place

Attached to Project: Community Packages
Opened by Heinrich Siebmanns (Harvey) - Monday, 15 March 2010, 11:52 GMT
Last edited by Andrea Scarpino (BaSh) - Thursday, 09 September 2010, 12:36 GMT
Task Type Bug Report
Category Packages
Status Closed
Assigned To Ionut Biru (wonder)
Architecture x86_64
Severity Low
Priority Normal
Reported Version
Due in Version Undecided
Due Date Undecided
Percent Complete 100%
Votes 0
Private No

Details

I have qtcurve installed as well as lib32-qtcurve from AUR (amongst all other 32 bit libs I need). But lib32-gtk2 seems to look in the wrong directory for loading 32 bit themes. lib32-qtcurve is in /opt/lib32/usr/lib/gtk-2.0/2.10.0/engines/libqtcurve.so instead of the path mentioned in the error warning.

Starting 32bit GTK apps gives me following errror:
Gtk-WARNING **: /usr/lib/gtk-2.0/2.10.0/engines/libqtcurve.so: wrong ELF class: ELFCLASS64

Seems like lib32-gtk2 has a wrong path compiled in. Or is there any lib32-specific conf-file I have to edit?
This task depends upon

Closed by  Andrea Scarpino (BaSh)
Thursday, 09 September 2010, 12:36 GMT
Reason for closing:  None
Additional comments about closing:  no more in [community]. see comments.
Comment by Ionut Biru (wonder) - Monday, 15 March 2010, 12:32 GMT
you assume that lib32-gtk2 was compiled with wrong path, that is not true since we are not compiling lib32-gtk2 especially for this scope. we are using i686 package which was compiled from x86_64/i686 with the same options.

now what happens if you use:
LD_PRELOAD=/opt/lib32/usr/lib/gtk-2.0/2.10.0/engines/libqtcurve.so binary
or
GTK_PATH=/opt/lib32/usr/lib/gtk-2.0/2.10.0/engines/ binary
Comment by Heinrich Siebmanns (Harvey) - Monday, 15 March 2010, 14:26 GMT
Well, I was just guessing ;-)

If I invoke the commands you suggested in a shell (you did not say that, but will assume this as well because otherwise I am clueless what you mean...) I get:
bash: binary: Command not found

Comment by Ionut Biru (wonder) - Monday, 15 March 2010, 14:48 GMT
that was an example. modify "binary" with your actual application that you want to run.
Comment by Heinrich Siebmanns (Harvey) - Monday, 15 March 2010, 15:40 GMT
Ah, I see ;-)
But - no change... Still the same error on both possibilities:
(Lin-HaBu.app:4094): Gtk-WARNING **: /usr/lib/gtk-2.0/2.10.0/engines/libqtcurve.so: wrong ELF class: ELFCLASS64
Comment by Ionut Biru (wonder) - Monday, 15 March 2010, 16:10 GMT
what's the app you want to run? give me a link from aur.
Comment by Heinrich Siebmanns (Harvey) - Monday, 15 March 2010, 16:57 GMT
This is no package from AUR. It is an application compiled with realbasic, Lin-HaBu, an accounting software from germany. You can get this on http://mcrichter.macbay.de/Media/Programme/LinHaBu.zip .
According to the Docs it should run on x86_64. Which it actually does but it looks ugly ;-)
It needs as dependencies gtk+2.8 glibc-2.4 libcups and libstdc++.so.6 all as 32bit.


But RealBASIC itself has the same problem. There is an old Version of Realbasic in AUR:
http://aur.archlinux.org/packages.php?ID=13777

BTW, I'm really glad that you are trying to help me.
Comment by John Schoenick (Nephyrin) - Wednesday, 01 September 2010, 20:43 GMT
  • Field changed: Percent Complete (100% → 0%)
Still an issue - the run_bin32_gtk wrapper script on AUR fixes this, but 32bit GTK apps dont run properly by default. Also, lib32-gtk-engines is still AUR-only
Comment by Ionut Biru (wonder) - Wednesday, 01 September 2010, 20:45 GMT
now lib32-gtk looks for engines in the proper place. so is not an issue with lib32-gtk2.

please ask for feature request on our multilib mailing list for moving engines in the repo.

Loading...