Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 118911 - revdep-rebuild doesn't find /usr/share/games/glest/lib/glest
Summary: revdep-rebuild doesn't find /usr/share/games/glest/lib/glest
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: [OLD] Games (show other bugs)
Hardware: x86 Linux
: High normal (vote)
Assignee: Gentoo Games
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2006-01-13 12:35 UTC by Evert
Modified: 2006-08-28 13:00 UTC (History)
2 users (show)

See Also:
Package list:
Runtime testing required: ---


Attachments
Patch for glest-2.0.0 ebuild (glest-2.0.0.ebuild.revdep-rebuild.patch,552 bytes, patch)
2006-05-22 19:38 UTC, Paul Varner (RETIRED)
Details | Diff
glest-2.0.0-home.patch (glest-2.0.0-home.patch,2.30 KB, patch)
2006-08-11 12:59 UTC, Tristan Heaven (RETIRED)
Details | Diff
glest-2.0.0.ebuild (glest-2.0.0.ebuild,2.61 KB, text/plain)
2006-08-11 13:00 UTC, Tristan Heaven (RETIRED)
Details
glest-2.0.0-r1.ebuild (glest-2.0.0-r1.ebuild,2.62 KB, text/plain)
2006-08-23 00:05 UTC, Tristan Heaven (RETIRED)
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Evert 2006-01-13 12:35:10 UTC
After updating dev-libs/xerces, glest doesn't work anymore. I had this before and after re-emerging glest it ran OK again. But revrep-rebuild doesn't find glest, which is missing a library, I guess because it doesn't check the /usr/share/games/glest/lib dir...


$ glest
./glest: error while loading shared libraries: libxerces-c.so.26: cannot open shared object file: No such file or directory


# revdep-rebuild -p
[...cut...]
Dynamic linking on your system is consistent... All done.


$ ldd /usr/share/games/glest/lib/glest
        linux-gate.so.1 =>  (0xffffe000)
        libSDL-1.2.so.0 => /usr/lib/libSDL-1.2.so.0 (0xb7f2d000)
        libpthread.so.0 => /lib/libpthread.so.0 (0xb7eda000)
        libGL.so.1 => /usr/lib/opengl/nvidia/lib/libGL.so.1 (0xb7e6c000)
        libGLU.so.1 => /usr/lib/libGLU.so.1 (0xb7df3000)
        libm.so.6 => /lib/libm.so.6 (0xb7dd0000)
        libxerces-c.so.26 => not found
        libvorbis.so.0 => /usr/lib/libvorbis.so.0 (0xb7da9000)
        [...cut...]
Comment 1 Tristan Heaven (RETIRED) gentoo-dev 2006-05-01 23:57:39 UTC
By default, revdep-rebuild won't even search GAMES_BINDIR or GAMES_LIBDIR.

Perhaps the games eclass could add those to SEARCH_DIRS in gamesenv() or to a new file in /etc/revdep-rebuild. 
Comment 2 Paul Varner (RETIRED) gentoo-dev 2006-05-22 19:38:11 UTC
Created attachment 87296 [details, diff]
Patch for glest-2.0.0 ebuild

/usr/games/bin and /usr/games/lib are currently searched by revdep-rebuild.  What is not searched in this case is /usr/share/games/glest/lib. Attached patch for the glest-2.0.0 ebuild installs a SEARCH_DIRS directive into the /etc/revdep-rebuild directory.
Comment 3 Tristan Heaven (RETIRED) gentoo-dev 2006-05-23 00:12:01 UTC
You're right, I suppose it gets that from PATH and LDPATH, I just assumed it only checked SEARCH_DIRS.
Comment 4 Evert 2006-08-11 03:40:18 UTC
I think this is not the fault of revdep-rebuild, but it's the fault of the glest ebuild! The directory /usr/share is supposed to only include architecture independent files, so no binary executables or libs. Now see:

# file /usr/share/games/glest/lib/glest
/usr/share/games/glest/lib/glest: ELF 32-bit LSB executable, Intel 80386, version 1 (SYSV), for GNU/Linux 2.4.1, dynamically linked (uses shared libs), for GNU/Linux 2.4.1, stripped

This was the case in glest-1.2.1.2 and is now the case again in glest-2.0.0!

I think the easiest way to fix this is to let the ebuild move /usr/share/games/glest/lib/glest to  /usr/games/lib/ and create a softlink /usr/share/games/glest/lib/glest which points to /usr/games/lib/glest.
This way, /usr/share would not only get rid of a binary but revdep-rebuild would also have no problem finding the executable anymore!

Furthermore, (a bit off topic, but) I see the directory /usr/share/doc/glest-2.0.0 is empty.

# equery f glest |grep doc
/usr/share/doc
/usr/share/doc/glest-2.0.0

I don't know if there is a special reason for this, but if there isn't, the ebuild can skip the creation of that directory too!
Comment 5 Tristan Heaven (RETIRED) gentoo-dev 2006-08-11 04:39:14 UTC
Ideally, the game would write to $HOME and wouldn't need a wrapper.
Comment 6 Tristan Heaven (RETIRED) gentoo-dev 2006-08-11 12:59:43 UTC
Created attachment 94013 [details, diff]
glest-2.0.0-home.patch

I think this works.
Comment 7 Tristan Heaven (RETIRED) gentoo-dev 2006-08-11 13:00:59 UTC
Created attachment 94014 [details]
glest-2.0.0.ebuild
Comment 8 Tristan Heaven (RETIRED) gentoo-dev 2006-08-23 00:05:08 UTC
Created attachment 94914 [details]
glest-2.0.0-r1.ebuild

Use 2.0.0 data.
Comment 9 Mr. Bones. (RETIRED) gentoo-dev 2006-08-28 13:00:22 UTC
Should be fixed by glest-2.0.0-r1, thanks to Tristan Heaven