Tuesday, January 08, 2008

Installing Quake 3 on Solaris, fixing lib issues

Want to play some games on Solaris? You can grab Quake 3 + data (demo) here. pkgadd -d the packages (data first).

This is also a way to troubleshoot various missing files or LD issues on Solaris.

Run /usr/local/bin/ioquake3.sh

% /usr/local/bin/ioquake3.sh
ld.so.1: ioquake3.i386: fatal: libGLU.so.1: open failed: No such file or directory
/usr/local/bin/ioquake3.sh: line 39: 1678 Killed ${EXEC_DIR}/${EXEC_BIN} ${EXEC_FLAGS} $*

Well, that's no good. Let's find libGLU.so.1:
% grep libGLU.so.1 /var/sadm/install/contents
/usr/X11/lib/GL/amd64/libGLU.so.1=../../mesa/amd64/libGLU.so.1 s none SUNWxorg-mesa
/usr/X11/lib/GL/libGLU.so.1=../mesa/libGLU.so.1 s none SUNWxorg-mesa
...
Well, this should do it. What is that script running though? A simple grep for EXEC_BIN and EXEC_DIR in /usr/local/bin/ioquake3.sh gives us the location: /usr/local/share/games/quake3/ioquake3.i386
% ldd /usr/local/share/games/quake3/ioquake3.i386 | grep "not found"
libGLU.so.1 => (file not found)
So, now all we need to do is add libGLU.so.1 to the proper library path, and we're good to go:
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/X11/lib/
Use /usr/local/bin/ioquake3.sh to start Quake 3.

Enjoy :-).

1 comments:

Anonymous said...

Can you try Tremulous (which started as a great quake3 mod) on (Open)Solaris?
Here it says that building it is somewhat tricky. But would be nice to have a tutorial or a binary that would work on (Open)Solaris.