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 241

Summary: SDL-1.2.10 compilation failed, using --disable-video-x11-xinerama
Product: SDL Reporter: Ian Abbott <ian>
Component: videoAssignee: Ryan C. Gordon <icculus>
Status: RESOLVED FIXED QA Contact: Sam Lantinga <slouken>
Severity: normal    
Priority: P2 CC: chris.venghaus, daniel
Version: 1.2.10   
Hardware: x86   
OS: Linux   
Attachments: My SDL_config.h
Possible fix

Description Ian Abbott 2006-05-26 12:55:21 UTC
I get the following compilation errors:

/bin/sh ./libtool --mode=compile i686-pc-linux-gnu-gcc -march=athlon -O2 -pipe  -I./include -D_GNU_SOURCE=1 -fvisibility=hidden  -I/usr/kde/3.5/include/artsc -pthread -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include  -DXTHREADS -D_REENTRANT -DHAVE_LINUX_VERSION_H -c ./src/video/x11/SDL_x11modes.c  -o build/SDL_x11modes.lo
 i686-pc-linux-gnu-gcc -march=athlon -O2 -pipe -I./include -D_GNU_SOURCE=1 -fvisibility=hidden -I/usr/kde/3.5/include/artsc -pthread -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include -DXTHREADS -D_REENTRANT -DHAVE_LINUX_VERSION_H -c ./src/video/x11/SDL_x11modes.c  -fPIC -DPIC -o build/.libs/SDL_x11modes.o
./src/video/x11/SDL_x11modes.c: In function 'X11_GetVideoModes':
./src/video/x11/SDL_x11modes.c:632: error: 'struct SDL_PrivateVideoData' has no member named 'xinerama_info'
./src/video/x11/SDL_x11modes.c: In function 'X11_ResizeFullScreen':
./src/video/x11/SDL_x11modes.c:905: error: 'struct SDL_PrivateVideoData' has no member named 'xinerama_info'
./src/video/x11/SDL_x11modes.c:906: error: 'struct SDL_PrivateVideoData' has no member named 'xinerama_info'
./src/video/x11/SDL_x11modes.c:907: error: 'struct SDL_PrivateVideoData' has no member named 'xinerama_info'
./src/video/x11/SDL_x11modes.c:908: error: 'struct SDL_PrivateVideoData' has no member named 'xinerama_info'
./src/video/x11/SDL_x11modes.c: In function 'X11_EnterFullScreen':
./src/video/x11/SDL_x11modes.c:967: error: 'struct SDL_PrivateVideoData' has no member named 'xinerama_info'
./src/video/x11/SDL_x11modes.c:968: error: 'struct SDL_PrivateVideoData' has no member named 'xinerama_info'
./src/video/x11/SDL_x11modes.c:969: error: 'struct SDL_PrivateVideoData' has no member named 'xinerama_info'
./src/video/x11/SDL_x11modes.c:970: error: 'struct SDL_PrivateVideoData' has no member named 'xinerama_info'
make: *** [build/SDL_x11modes.lo] Error 1

Configure options were as follows:

./configure --prefix=/usr --host=i686-pc-linux-gnu --mandir=/usr/share/man --infodir=/usr/share/info --datadir=/usr/share --sysconfdir=/etc --localstatedir=/var/lib --disable-dependency-tracking --disable-rpath --enable-events --enable-cdrom --enable-threads --enable-timers --enable-endian --enable-file --enable-cpuinfo --enable-oss --enable-alsa --disable-esd --enable-arts --disable-nas --enable-video-x11 --disable-dga --enable-video-x11-xv --disable-video-x11-xinerama --enable-video-x11-xrandr --disable-video-dga --disable-video-fbcon --disable-video-ggi --disable-video-svga --disable-video-aalib --disable-video-caca --enable-video-opengl --with-x --disable-video-x11-xme --enable-nasm --enable-video-dummy --disable-video-directfb --build=i686-pc-linux-gnu

Three patches were applied by Gentoo Linux's ebuild:

libsdl-1.2.10-PIC-hidden-symbols.patch
libsdl-1.2.10-libcaca.patch
libsdl-1.2.10-sdl-config.patch

I can attach those if needed.

I will attach my include/SDL_config.h file
Comment 1 Ian Abbott 2006-05-26 12:58:08 UTC
Created attachment 133 [details]
My SDL_config.h
Comment 2 Ian Abbott 2006-05-26 13:26:37 UTC
Created attachment 134 [details]
Possible fix

I'm not sure if I got the relationship between SDL_VIDEO_DRIVER_X11_VIDMODE and SDL_VIDEO_DRIVER_X11_XINERAMA correct in this patch, but at least it now compiles okay!
Comment 3 Christopher Venghaus 2006-05-27 10:18:35 UTC
I've got the same problem using the following similar configuration. Same patches applied with gentoo:

./configure --prefix=/usr --host=i686-pc-linux-gnu --mandir=/usr/share/man --infodir=/usr/share/info --datadir=/usr/share --sysconfdir=/etc --localstatedir=/var/lib --disable-dependency-tracking --disable-rpath --enable-events --enable-cdrom --enable-threads --enble-timers --enable-endian --enable-file --enable-cpuinfo --enable-oss --enable-alsa --disable-esd --enable-arts --enable-nas --enable-video-x11 --disable-dga --enable-video-x11-xv --disable-video-x11-xinerama --enable-video-x11-xrandr --disable-video-dga --disable-video-fbcon --disable-video-ggi --disable-video-svga --enable-video-aalib --disable-video-caca --enable-video-opengl --with-x --disable-video-x11-xme --enable-nasm --enable-video-dummy --disable-video-directfb --build=i686-pc-linux-gnu

 i686-pc-linux-gnu-gcc -O2 -mcpu=i686 -I./include -D_GNU_SOURCE=1 -I/usr/kde/3.5/include/artsc -pthread -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include -I/usr/X11R6/include/ -DXTHREADS -D_REENTRANT -DHAVE_LINUX_VERSION_H -c ./src/video/x11/SDL_x11modes.c  -fPIC -DPIC -o build/.libs/SDL_x11modes.o
`-mcpu=' is deprecated. Use `-mtune=' or '-march=' instead.
./src/video/x11/SDL_x11modes.c: In function `X11_GetVideoModes':
./src/video/x11/SDL_x11modes.c:632: error: structure has no member named `xinerama_info'
./src/video/x11/SDL_x11modes.c: In function `X11_ResizeFullScreen':
./src/video/x11/SDL_x11modes.c:905: error: structure has no member named `xinerama_info'
./src/video/x11/SDL_x11modes.c:906: error: structure has no member named `xinerama_info'
./src/video/x11/SDL_x11modes.c:907: error: structure has no member named `xinerama_info'
./src/video/x11/SDL_x11modes.c:908: error: structure has no member named `xinerama_info'
./src/video/x11/SDL_x11modes.c: In function `X11_EnterFullScreen':
./src/video/x11/SDL_x11modes.c:967: error: structure has no member named `xinerama_info'
./src/video/x11/SDL_x11modes.c:968: error: structure has no member named `xinerama_info'
./src/video/x11/SDL_x11modes.c:969: error: structure has no member named `xinerama_info'
./src/video/x11/SDL_x11modes.c:970: error: structure has no member named `xinerama_info'
make: *** [build/SDL_x11modes.lo] Error 1

!!! ERROR: media-libs/libsdl-1.2.10 failed.
Call stack:
  ebuild.sh, line 1531:   Called dyn_compile
  ebuild.sh, line 931:   Called src_compile
  libsdl-1.2.10.ebuild, line 143:   Called die
Comment 4 Daniel Thaler 2006-05-28 18:21:51 UTC
*** Bug 243 has been marked as a duplicate of this bug. ***
Comment 5 Sam Lantinga 2006-06-20 01:26:51 UTC
This is fixed in subversion, thanks!