Page 1 of 1

New SVN - configure can't find GL libraries

Posted: Tue Dec 28, 2010 4:50 am
by eracc
Today, I just wiped out my SVN directory for VegaStrike and did a clean checkout. Running ./configure here is ending in an error:

Code: Select all

...
checking for GL library... no
checking for GL library (with pthreads)... no
checking for MesaGL library... no
checking for MesaGL library (with pthreads)... no
checking for opengl32 library... no
checking for opengl32 library (with pthreads)... no
*** Hmm, you don't seem to have OpenGL libraries installed in the standard
*** location (/usr/lib).  I'll check in /usr/X11R6/lib, since
*** many distributions (incorrectly) put OpenGL libs there.
checking for GL library... no
checking for GL library (with pthreads)... no
checking for MesaGL library... no
checking for MesaGL library (with pthreads)... no
checking for opengl32 library... no
checking for opengl32 library (with pthreads)... no
configure: error: Cannot find GL library
I appear to have GL libraries:

Code: Select all

[gene@era4 vegastrike]$ locate /GL/gl
/usr/include/GL/gl.h
/usr/include/GL/gl_mangle.h
/usr/include/GL/glext.h
/usr/include/GL/glfbdev.h
/usr/include/GL/glu.h
/usr/include/GL/glu_mangle.h
/usr/include/GL/glut.h
/usr/include/GL/glutf90.h
/usr/include/GL/glx.h
/usr/include/GL/glx_mangle.h
/usr/include/GL/glxext.h
/usr/include/GL/glxint.h
/usr/include/GL/glxmd.h
/usr/include/GL/glxproto.h
/usr/include/GL/glxtokens.h
/usr/include/nvidia-current/GL/gl.h
/usr/include/nvidia-current/GL/glext.h
/usr/include/nvidia-current/GL/glx.h
/usr/include/nvidia-current/GL/glxext.h
/usr/include/root/GL/glew.h
/usr/include/root/GL/glxew.h
/usr/lib/python2.6/site-packages/OpenGL/GL/glget.py
/usr/lib/python2.6/site-packages/OpenGL/GL/glget.pyc
/usr/share/doc/NVIDIA_GLX-1.0/include/GL/gl.h
/usr/share/doc/NVIDIA_GLX-1.0/include/GL/glext.h
/usr/share/doc/NVIDIA_GLX-1.0/include/GL/glx.h
/usr/share/doc/NVIDIA_GLX-1.0/include/GL/glxext.h
/usr/share/root/cint/cint/include/GL/gl.h
/usr/share/root/cint/cint/include/GL/glu.h
/usr/share/root/cint/cint/include/GL/glut.h
/usr/share/root/cint/cint7/include/GL/gl.h
/usr/share/root/cint/cint7/include/GL/glu.h
/usr/share/root/cint/cint7/include/GL/glut.h
I have tried these both with and without ending slashes:

Code: Select all

./configure --with-gl-inc=/usr/include
./configure --with-gl-inc=/usr/include/GL
./configure --with-gl-inc=/usr/include/nvidia-current
./configure --with-gl-inc=/usr/include/nvidia-current/GL
The system used is in my signature. Suggestions?

Re: New SVN - configure can't find GL libraries

Posted: Tue Dec 28, 2010 3:45 pm
by klauss
Try cmake instead of autotools.

But I suspect you're missing some GL-related dev package. Ie, you have the normal package installed, but not the development version.

Check to see if you have dev versions of glut.

Re: New SVN - configure can't find GL libraries

Posted: Tue Dec 28, 2010 11:38 pm
by eracc
Okay, I'll try cmake.

You mean this?
$ rpm -aq|grep glut
libmesaglut3-7.8.1-6mdv2010.1
libmesaglut3-devel-7.8.1-6mdv2010.1 <---
libmgl-glut5-1.10-2mdv2010.1
And these?
$locate /glut
/usr/include/GL/glut.h
/usr/include/GL/glutf90.h

Re: New SVN - configure can't find GL libraries

Posted: Tue Dec 28, 2010 11:41 pm
by klauss
In debian it's libfreeglut3-dev, but it might be that.

Re: New SVN - configure can't find GL libraries

Posted: Tue Dec 28, 2010 11:43 pm
by eracc
Here are all the options I have for installing anything with 'glut' in the package name:
# urpmq --list|grep glut
libmesaglut3
libmesaglut3-devel
libmgl-glut5
These are all already installed.

Re: New SVN - configure can't find GL libraries

Posted: Tue Dec 28, 2010 11:44 pm
by klauss
Hey... I hadn't seen you attached the config.log.

Taking a look at it, your system seems to have something rather broken:

Code: Select all

configure:8782: g++ -o conftest     conftest.cpp -lutil  -L/usr/lib -lSDL -lpthread  -lGL >&5
/usr/lib/libGL.so: undefined reference to `_nv000009gl'
If finds libGL.so, but it can't link it because it's missing some symbol?
So... WTF?

What does glxinfo say to you?

Re: New SVN - configure can't find GL libraries

Posted: Tue Dec 28, 2010 11:50 pm
by eracc
The glxinfo output is attached as a file.

Re: New SVN - configure can't find GL libraries

Posted: Tue Dec 28, 2010 11:58 pm
by klauss
Take a look at this, perhaps it's something similar:

Re: New SVN - configure can't find GL libraries

Posted: Wed Dec 29, 2010 12:42 am
by eracc
Hmmm, that may be. The symbolic link /usr/lib/libGL.so.1 was pointing to an old /usr/lib/libGL.so.190.42. My current nVidia driver is actually the 195.36.24 release. I redid the symbolic linking and will try again with cmake per your suggestion.

Here is what the setup was before I changed the linking:
# locate -i libgl.so|xargs ls -l
lrwxrwxrwx 1 root root 10 2010-12-10 20:48 /usr/lib/libGL.so -> libGL.so.1
lrwxrwxrwx 1 root root 15 2010-08-08 12:47 /usr/lib/libGL.so.1 -> libGL.so.190.42
-rwxr-xr-x 1 root root 388136 2010-06-21 15:22 /usr/lib/libGL.so.1.2
-rwxr-xr-x 1 root root 721792 2009-12-03 19:24 /usr/lib/libGL.so.190.42
lrwxrwxrwx 1 root root 12 2010-08-08 12:20 /usr/lib/mesa/libGL.so.1 -> libGL.so.1.2
-rwxr-xr-x 1 root root 388136 2010-06-21 15:21 /usr/lib/mesa/libGL.so.1.2
lrwxrwxrwx 1 root root 10 2010-12-26 21:58 /usr/lib/nvidia-current/libGL.so -> libGL.so.1
lrwxrwxrwx 1 root root 18 2010-08-08 17:34 /usr/lib/nvidia-current/libGL.so.1 -> libGL.so.195.36.24
-rwxr-xr-x 1 root root 738816 2010-05-04 18:34 /usr/lib/nvidia-current/libGL.so.195.36.24
Here is after I changed it:
# locate -i libgl.so|xargs ls -l
lrwxrwxrwx 1 root root 10 2010-12-10 20:48 /usr/lib/libGL.so -> libGL.so.1
lrwxrwxrwx 1 root root 34 2010-12-28 17:33 /usr/lib/libGL.so.1 -> /usr/lib/nvidia-current/libGL.so.1
-rwxr-xr-x 1 root root 388136 2010-06-21 15:22 /usr/lib/libGL.so.1.2
-rwxr-xr-x 1 root root 721792 2009-12-03 19:24 /usr/lib/libGL.so.190.42
lrwxrwxrwx 1 root root 12 2010-08-08 12:20 /usr/lib/mesa/libGL.so.1 -> libGL.so.1.2
-rwxr-xr-x 1 root root 388136 2010-06-21 15:21 /usr/lib/mesa/libGL.so.1.2
lrwxrwxrwx 1 root root 10 2010-12-26 21:58 /usr/lib/nvidia-current/libGL.so -> libGL.so.1
lrwxrwxrwx 1 root root 18 2010-08-08 17:34 /usr/lib/nvidia-current/libGL.so.1 -> libGL.so.195.36.24
-rwxr-xr-x 1 root root 738816 2010-05-04 18:34 /usr/lib/nvidia-current/libGL.so.195.36.24
The ./configure phase does complete now. Thanks klauss. :)

Re: New SVN - configure can't find GL libraries

Posted: Wed Dec 29, 2010 12:53 am
by eracc
Apparently I do not know how to run 'cmake'. I am following the directions here: http://vegastrike.sourceforge.net/wiki/ ... e_from_SVN

I see nothing on that page about how to compile VegaStrike with 'cmake'. Should I be looking for compilation information for SVN elsewhere than the "official" wiki? :) However, plain old 'make' is running as I type this. Maybe it will finish without errors.

Re: New SVN - configure can't find GL libraries

Posted: Wed Dec 29, 2010 1:10 am
by eracc
Everything compiled without error. Ran vssetup and vegastrike. Both work. Now to get down to some playing. :)

Re: New SVN - configure can't find GL libraries

Posted: Wed Dec 29, 2010 2:27 am
by klauss
eracc wrote:Apparently I do not know how to run 'cmake'. I am following the directions here: http://vegastrike.sourceforge.net/wiki/ ... e_from_SVN

I see nothing on that page about how to compile VegaStrike with 'cmake'. Should I be looking for compilation information for SVN elsewhere than the "official" wiki? :) However, plain old 'make' is running as I type this. Maybe it will finish without errors.
Ya, nobody (AFAIK) took the time yet to add cmake instructions to the wiki.

I think there's a thread somewhere around the forums.

In any case, it's simple:

Code: Select all

vegastrike$ mkdir build
vegastrike$ cd build
build$ ccmake ..
<<GUI pops up, follow on-screen instructions>>
build$ make
The good thing about cmake, besides that it uses pkg-config and is a lot faster and more predictable than configure, is that it has a nifty GUI (well, CUI, console UI) that makes the whole process a lot less painful.

If you get cmake going and feel like it, you're welcome to document how the process goes in the wiki, for other users' benefit ;)