Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!

Bug 454868

Summary: x11-wm/fluxbox-? with updated media-libs/glew-1.9.0 - `fbrun` yields error while loading shared libraries: libGLEW.so.1.6: cannot open shared object file: No such file or directory
Product: Gentoo Linux Reporter: Sebastian Mueller <mueller>
Component: Current packagesAssignee: No maintainer - Look at https://wiki.gentoo.org/wiki/Project:Proxy_Maintainers if you want to take care of it <maintainer-needed>
Status: RESOLVED TEST-REQUEST    
Severity: normal CC: desktop-wm+disabled
Priority: Normal    
Version: unspecified   
Hardware: All   
OS: Linux   
See Also: https://bugs.gentoo.org/show_bug.cgi?id=454148
Whiteboard:
Package list:
Runtime testing required: ---
Attachments: changes to fluxbox-1.3.3 to use glew-1.6.0 as dependency

Description Sebastian Mueller 2013-01-31 16:46:43 UTC
I notice that fbrun (part of fluxbox) stops working with the following error:

fbrun: error while loading shared libraries: libGLEW.so.1.6: cannot open shared object file: No such file or directory

The last stable glew version is media-libs/glew-1.9.0. It seems that fluxbox fbrun depends on glew-1.6.x.

Maybe it is an option to downgrade to media-libs/glew-1.6.0-r1, but does not tried it yet. 

Expected behavior:
The ebuild of fluxbox should depend on older glew version or fluxbox should use the new glew lib.
Comment 1 Tom Wijsman (TomWij) (RETIRED) gentoo-dev 2013-01-31 19:28:57 UTC
> fbrun: error while loading shared libraries: libGLEW.so.1.6: cannot open shared object file: No such file or directory

Did you try to execute `revdep-rebuild`?
Comment 2 Sebastian Mueller 2013-02-01 09:41:03 UTC
Yes, but it finds no link level breakage (everything is fine for revdep-rebuild)

Also reemerging glew and fluxbox does not help


$ ls -l /usr/lib
lrwxrwxrwx 1 root root 5 14. Okt 2010  /usr/lib -> lib64

 $ ls -l /usr/lib/libGLEW*
lrwxrwxrwx 1 root root     18 31. Jan 17:06 /usr/lib/libGLEWmx.so -> libGLEWmx.so.1.9.0
lrwxrwxrwx 1 root root     18 31. Jan 17:06 /usr/lib/libGLEWmx.so.1.9 -> libGLEWmx.so.1.9.0
-rwxr-xr-x 1 root root 395136 31. Jan 17:06 /usr/lib/libGLEWmx.so.1.9.0
lrwxrwxrwx 1 root root     16 31. Jan 17:06 /usr/lib/libGLEW.so -> libGLEW.so.1.9.0
lrwxrwxrwx 1 root root     16 31. Jan 17:06 /usr/lib/libGLEW.so.1.9 -> libGLEW.so.1.9.0
-rwxr-xr-x 1 root root 452488 31. Jan 17:06 /usr/lib/libGLEW.so.1.9.0


No other program has problems, only fbrun has this error. Any idea how to work around or fix that?
Comment 3 Tom Wijsman (TomWij) (RETIRED) gentoo-dev 2013-02-04 02:00:48 UTC
I think that one of fluxbox's dependencies still depends on the older glew.

You could try emerging those to see if you can get it easily resolved that way.

If not, can you please provide the output of 

`readelf -d /usr/bin/fbrun | grep NEEDED`

and of

`lddtree /usr/bin/fbrun`

which might yield some more light.

https://bugs.gentoo.org/show_bug.cgi?id=454148 seems like an approach that would have prevented this from happening in the first place; although revdep-rebuild would have caught it in that case, so there is more going on here.

Feels like some library in the dependency tree might be using something like dlopen() which revdep-rebuild doesn't catch...

Also, which version of fluxbox do you have?
Comment 4 Sebastian Mueller 2013-02-04 17:20:23 UTC
# emerge --info fluxbox

[ . . . ]

=================================================================
                        Package Settings
=================================================================

x11-wm/fluxbox-1.3.2 was built with the following:
USE="imlib (multilib) nls slit toolbar truetype vim-syntax xinerama -bidi" ABI_X86="64"


$ readelf -d /usr/bin/fbrun | grep NEEDED
 0x0000000000000001 (NEEDED)             Shared library: [libX11.so.6]
 0x0000000000000001 (NEEDED)             Shared library: [libXft.so.2]
 0x0000000000000001 (NEEDED)             Shared library: [libfontconfig.so.1]
 0x0000000000000001 (NEEDED)             Shared library: [libXrender.so.1]
 0x0000000000000001 (NEEDED)             Shared library: [libXpm.so.4]
 0x0000000000000001 (NEEDED)             Shared library: [libXinerama.so.1]
 0x0000000000000001 (NEEDED)             Shared library: [libstdc++.so.6]
 0x0000000000000001 (NEEDED)             Shared library: [libm.so.6]
 0x0000000000000001 (NEEDED)             Shared library: [libgcc_s.so.1]
 0x0000000000000001 (NEEDED)             Shared library: [libc.so.6]
$ lddtree /usr/bin/fbrun
fbrun => /usr/bin/fbrun (interpreter => /lib64/ld-linux-x86-64.so.2)
    libX11.so.6 => /usr/lib64/libX11.so.6
        libxcb.so.1 => /usr/lib64/libxcb.so.1
            libXau.so.6 => /usr/lib64/libXau.so.6
            libXdmcp.so.6 => /usr/lib64/libXdmcp.so.6
        libdl.so.2 => /lib64/libdl.so.2
    libXft.so.2 => /usr/lib64/libXft.so.2
        libz.so.1 => /lib64/libz.so.1
        libexpat.so.1 => /usr/lib64/libexpat.so.1
        libfreetype.so.6 => /usr/lib64/libfreetype.so.6
            libbz2.so.1 => /lib64/libbz2.so.1
    libfontconfig.so.1 => /usr/lib64/libfontconfig.so.1
    libXrender.so.1 => /usr/lib64/libXrender.so.1
    libXpm.so.4 => /usr/lib64/libXpm.so.4
    libXinerama.so.1 => /usr/lib64/libXinerama.so.1
        libXext.so.6 => /usr/lib64/libXext.so.6
    libstdc++.so.6 => /usr/lib/gcc/x86_64-pc-linux-gnu/4.6.3/32/libstdc++.so.6
        ld-linux.so.2 => /lib64/ld-linux.so.2
    libm.so.6 => /lib64/libm.so.6
    libgcc_s.so.1 => /usr/lib/gcc/x86_64-pc-linux-gnu/4.6.3/32/libgcc_s.so.1
    libc.so.6 => /lib64/libc.so.6

I'll now downgrade glew to check if this solves the problem as aspected
Comment 5 Sebastian Mueller 2013-02-04 17:23:15 UTC
I've done:
# emerge -av =media-libs/glew-1.6.0-r1

fbrun works again
Comment 6 Sebastian Mueller 2013-03-06 09:43:33 UTC
Created attachment 341088 [details, diff]
changes to fluxbox-1.3.3 to use glew-1.6.0 as dependency
Comment 7 Sebastian Mueller 2013-03-06 09:45:47 UTC
I modified the fluxbox-1.3.3.ebuild file to use glew-1.6.0-r1 instead of glew-1.9.0 (please note: stable version of fluxbox is 1.3.2, I used the masked version 1.3.3. The modifications are the same in both versions)

I was tired of reinstall glew-1.6.0 after each "emerge -uDNav world".

I simply changed the line: 

DEPEND="bidi? ( virtual/pkgconfig )

to:

DEPEND="~media-libs/glew-1.6.0 
     bidi? ( virtual/pkgconfig )

(see attached fluxbox-1.3.3.ebuild.patch)
Comment 8 Pacho Ramos gentoo-dev 2013-10-19 15:49:30 UTC
Please retry with 1.3.5
Comment 9 Sebastian Mueller 2013-10-20 09:57:57 UTC
In my current gentoo glew is not used.. I reinstalled gentoo in the meantime (changed to a new laptop). I'll try to reproduce the issue again and then try the new version.