We are currently migrating Bugzilla to GitHub issues.
Any changes made to the bug tracker now will be lost, so please do not post new bugs or make changes to them.
When we're done, all bug URLs will redirect to their equivalent location on the new bug tracker.

Bug 379

Summary: configure script misses opengl
Product: SDL Reporter: Kyle Gibson <kyle.james.gibson>
Component: videoAssignee: Ryan C. Gordon <icculus>
Status: RESOLVED FIXED QA Contact: Sam Lantinga <slouken>
Severity: minor    
Priority: P4    
Version: 1.2.11   
Hardware: x86   
OS: Linux   

Description Kyle Gibson 2006-12-31 21:54:41 UTC
Hi, the configure script for SDL-1.2.11 missed that my machine has opengl support. The slice of config.log below indicates what happened.

As a work around I simply modified include/SDL_config.h to enable GL and GLX, so I could compile my code.

before:

kyle@frozen:~/Desktop/gl$ g++ -o main gl.c -lGL -lSDL
kyle@frozen:~/Desktop/gl$ ./main 
ERROR: X11 driver not configured with OpenGL

after:

kyle@frozen:~/Desktop/gl$ g++ -o main gl.c -lGL -lSDL
kyle@frozen:~/Desktop/gl$ ./main 
(gl app runs)

config.log--------------------------

configure:29045: checking for OpenGL (GLX) support
configure:29068: gcc -c -g -O2 -I./include -D_GNU_SOURCE=1  -I/usr/X11R6/include -DXTHREADS  -I./include -D_GNU_SOURCE=1 conftest.c >&5
In file included from /usr/X11R6/include/GL/gl.h:1630,
                 from conftest.c:103:
/usr/X11R6/include/GL/glext.h:6952: error: redefinition of typedef 'PFNGLGETUNIFORMUIVEXTPROC'
/usr/X11R6/include/GL/glext.h:6941: error: previous declaration of 'PFNGLGETUNIFORMUIVEXTPROC' was here
configure:29074: $? = 1
configure: failed program was:
| /* confdefs.h.  */
| 
| #define PACKAGE_NAME ""
| #define PACKAGE_TARNAME ""
| #define PACKAGE_VERSION ""
| #define PACKAGE_STRING ""
| #define PACKAGE_BUGREPORT ""
| #define _GNU_SOURCE 1
| #define SDL_BYTEORDER 1234
| #define STDC_HEADERS 1
| #define HAVE_SYS_TYPES_H 1
| #define HAVE_SYS_STAT_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_MEMORY_H 1
| #define HAVE_STRINGS_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_DLFCN_H 1
| #ifdef __cplusplus
| extern "C" void std::exit (int) throw (); using std::exit;
| #endif
| #define HAVE_LIBC 1
| #define STDC_HEADERS 1
| #define HAVE_SYS_TYPES_H 1
| #define HAVE_STDIO_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STDDEF_H 1
| #define HAVE_STDARG_H 1
| #define HAVE_MALLOC_H 1
| #define HAVE_MEMORY_H 1
| #define HAVE_STRING_H 1
| #define HAVE_STRINGS_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_CTYPE_H 1
| #define HAVE_MATH_H 1
| #define HAVE_ICONV_H 1
| #define HAVE_SIGNAL_H 1
| #define SDL_HAS_64BIT_TYPE 1
| #define HAVE_ALLOCA_H 1
| #define HAVE_ALLOCA 1
| #define HAVE_MEMCMP 1
| #define HAVE_STRTOD 1
| #define HAVE_MALLOC 1
| #define HAVE_CALLOC 1
| #define HAVE_REALLOC 1
| #define HAVE_FREE 1
| #define HAVE_GETENV 1
| #define HAVE_PUTENV 1
| #define HAVE_UNSETENV 1
| #define HAVE_QSORT 1
| #define HAVE_ABS 1
| #define HAVE_BCOPY 1
| #define HAVE_MEMSET 1
| #define HAVE_MEMCPY 1
| #define HAVE_MEMMOVE 1
| #define HAVE_STRLEN 1
| #define HAVE_STRDUP 1
| #define HAVE_STRCHR 1
| #define HAVE_STRRCHR 1
| #define HAVE_STRSTR 1
| #define HAVE_STRTOL 1
| #define HAVE_STRTOUL 1
| #define HAVE_STRTOLL 1
| #define HAVE_STRTOULL 1
| #define HAVE_ATOI 1
| #define HAVE_ATOF 1
| #define HAVE_STRCMP 1
| #define HAVE_STRNCMP 1
| #define HAVE_STRCASECMP 1
| #define HAVE_STRNCASECMP 1
| #define HAVE_SSCANF 1
| #define HAVE_SNPRINTF 1
| #define HAVE_VSNPRINTF 1
| #define HAVE_ICONV 1
| #define HAVE_SIGACTION 1
| #define HAVE_SETJMP 1
| #define HAVE_NANOSLEEP 1
| #define SDL_ASSEMBLY_ROUTINES 1
| #define SDL_VIDEO_DRIVER_DUMMY 1
| #define SDL_AUDIO_DRIVER_DISK 1
| #define SDL_AUDIO_DRIVER_DUMMY 1
| #define HAVE_DLVSYM 1
| #define SDL_LOADSO_DLOPEN 1
| #define SDL_AUDIO_DRIVER_OSS 1
| #define HAVE_LIBASOUND 1
| #define SDL_AUDIO_DRIVER_ALSA 1
| #define SDL_AUDIO_DRIVER_ALSA_DYNAMIC "libasound.so.2"
| #define SDL_VIDEO_DRIVER_X11 1
| #define SDL_VIDEO_DRIVER_DGA 1
| #define SDL_VIDEO_DRIVER_X11_DGAMOUSE 1
| #define SDL_VIDEO_DRIVER_X11_VIDMODE 1
| #define SDL_VIDEO_DRIVER_X11_XV 1
| #define SDL_VIDEO_DRIVER_X11_XINERAMA 1
| #define SDL_VIDEO_DRIVER_X11_XME 1
| #define SDL_VIDEO_DRIVER_X11_XRANDR 1
| #define SDL_VIDEO_DRIVER_X11_DPMS 1
| #define SDL_VIDEO_DRIVER_FBCON 1
| /* end confdefs.h.  */
| 
|          #include <GL/gl.h>
|          #include <GL/glx.h>
| 
| int
| main ()
| {
| 
| 
|   ;
|   return 0;
| }
configure:29098: result: no
Comment 1 Sam Lantinga 2007-07-04 01:15:58 UTC
What distribution of Linux and version of X11 are you using?
Comment 2 Sam Lantinga 2007-07-07 23:38:48 UTC
This was apparently a bug in the NVidia headers, fixed in the latest release:
http://www.nvnews.net/vbulletin/showthread.php?t=81310