GLU in Xorg6.9.0 does not work with stellarium
I have Slackware 10.2 installed on my Dell laptop with X upgraded to Xorg6.9.0 (from slackware-current). I upgraded X because the "Intel 915GM" wasn't supported by the old version.
Now I tried compiling stellarium 0.7.1 from source. Configure complained that GLU (which is included in Xorg6.9.0, located in /usr/X11R6/lib) is not installed, and stopped. I installed MesaLib 6.4.2 to /usr/local/lib and the same thing happened.
So I forced ./configure (of stellarium-0.7.1) to skip checking the GLU part, and modified src/Makefile (of stellarium-0.7.1) so -lGLU is included in LIBS.
The compilation was okay but at the final step I got a linking error *even though* -lGLU was there.
The error message was that some glu... functions are not found, which were actually found in the result of "nm /usr/X11R6/lib/libGLU.so".
So I added -L/usr/local/lib (which contains my new libGLU.so from the new MesaLib) before -L/usr/X11R6/lib, and I got everything perfect. This means, I think, that the libGLU in the MesaLib worked but the libGLU in Xorg6.9.0 didn't.
I don't know why /usr/X11R6/lib/libGLU.so (coming with Xorg6.9.0) failed. Perhaps it is related with SDL (which is required for stellarium). Or perhaps because I upgraded some libraries from time to time. (I don't remember which.)
This is the part that failed when /usr/X11R6/lib/libGLU.so was used:
------------- begin -----------
g++ -g -O2 -Wall -I/usr/include/SDL -D_REENTRANT -o stellarium main.o ...OTHER_OBJ_FILES_HERE... -lGL -lGLU -lm -L/usr/local/lib -L/usr/X11R6/lib -L/usr/lib -Wl,-rpath,/usr/lib -lSDL -lpthread -lpng -lz -lSDL_mixer
------------- end -------------
Above, without -L/usr/local/lib it fails; with it it is okay. Again, /usr/local/lib has the new MesaLib library files (which I installed from source) including libGLU.so.
Any idea?
Thanks.
Chirok
|