Glynn,
thanks a lot for your help - I asked our sys admin to check the libGL
and apparently
the symlinks were the problem again. Just for the record, in case
somebody has a similar problem
this is what he says:
I took a closer look at things and noticed that there
were a few symlinks that pointed at nothing. Re-installing
the packages cleared that up -- and the files that appeared
to be missing were /usr/X11R6/lib64/libGL things.
after that everything compiled just fine and nviz runs great,
Helena
On Jun 28, 2007, at 7:09 AM, Glynn Clements wrote:
Helena Mitasova wrote:
thank you for your help - removing $(OPENGLLIB) $(OPENGLULIB) from
the ogsf/Makefile solved the ogsf compilation problem.
The nviz compilation still gives a related error:
Errors in:
/local/home/helena/grassdev/grass6/visualization/nviz
/usr/X11R6/lib64/libGL.a(glxcmds.o)(.text+0x32c1): In function
`glXGetMscRateOML':
: undefined reference to `XF86VidModeQueryVersion'
Ick. You should be able to work around this by manually adding
-lXxf86vm to the definition of OPENGLLIB in Platform.make (once
configure has generated it).
Unfortunately, it's hard for configure to detect this sort of thing
when using static libraries.
Linking against a shared library uses the entire library as a
monolithic entity, and will require any dependencies which the library
has.
OTOH, linking against a static library only uses the specific object
files which are actually required to satisfy any unresolved symbols,
and so only requires any dependencies of those specific object files.
The result is that a test program which uses a single function (e.g.
one generated by autoconf's AC_CHECK_LIB) will typically have fewer
dependencies than the real program (e.g. NVIZ).
E.g. a test program linked against -lGL will only require -lXxf86vm if
it references a function which is defined in glxcmds.o. Currently, the
test is for glBegin, which will certainly be in a different file (the
generic gl* functions and the X11-specific glX* functions are largely
separate), so the test doesn't need -lXxf86vm although NVIZ itself
does.
We could change the autoconf test to check for e.g. glXCreateContext,
which is more likely to require that file. But, ultimately, the only
solution for static libraries is to play "whack-a-mole", continually
adjusting the tests whenever ATI/nVidia change their OpenGL drivers.
--
Glynn Clements <[EMAIL PROTECTED]>
_______________________________________________
grass-dev mailing list
[email protected]
http://grass.itc.it/mailman/listinfo/grass-dev