SDL fails to build with --enable-video-fbcon

here’s the error:

libtool: compile: gcc -g -O2 -I./include -D_GNU_SOURCE=1 -mmmx
-m3dnow -msse -msse2 -fvisibility=hidden -D_REENTRANT
-I/usr/include/directfb -D_REENTRANT -D_REENTRANT
-DHAVE_LINUX_VERSION_H -c ./src/video/fbcon/SDL_fb3dfx.c -fPIC -DPIC
-o build/.libs/SDL_fb3dfx.o
In file included from ./src/video/fbcon/SDL_fb3dfx.h:26,
from ./src/video/fbcon/SDL_fb3dfx.c:26:
./src/video/fbcon/SDL_fbvideo.h:39:1: warning: “_THIS” redefined
In file included from ./src/video/fbcon/SDL_fbvideo.h:33,
from ./src/video/fbcon/SDL_fb3dfx.h:26,
from ./src/video/fbcon/SDL_fb3dfx.c:26:
./src/video/fbcon/…/SDL_sysvideo.h:180:1: warning: this is the
location of the previous definition
In file included from ./src/video/fbcon/SDL_fb3dfx.h:26,
from ./src/video/fbcon/SDL_fb3dfx.c:26:
./src/video/fbcon/SDL_fbvideo.h: In function ?FB_AddBusySurface?:
./src/video/fbcon/SDL_fbvideo.h:154: error: ?SDL_Surface? has no
member named ?hwdata?
./src/video/fbcon/SDL_fbvideo.h: In function ?FB_IsSurfaceBusy?:
./src/video/fbcon/SDL_fbvideo.h:160: error: ?SDL_Surface? has no
member named ?hwdata?
./src/video/fbcon/SDL_fbvideo.h: In function ?FB_WaitBusySurfaces?:
./src/video/fbcon/SDL_fbvideo.h:169: error: ?SDL_VideoDevice? has no
member named ?hidden?
./src/video/fbcon/SDL_fbvideo.h:172: error: ?SDL_VideoDevice? has no
member named ?hidden?
./src/video/fbcon/SDL_fbvideo.h: In function ?FB_dst_to_xy?:
./src/video/fbcon/SDL_fbvideo.h:180: error: ?SDL_VideoDevice? has no
member named ?hidden?
./src/video/fbcon/SDL_fbvideo.h:180: error: ?SDL_VideoDevice? has no
member named ?screen?
./src/video/fbcon/SDL_fbvideo.h:181: error: ?SDL_VideoDevice? has no
member named ?hidden?
./src/video/fbcon/SDL_fbvideo.h:181: error: ?SDL_VideoDevice? has no
member named ?screen?
./src/video/fbcon/SDL_fbvideo.h:182: error: ?SDL_VideoDevice? has no
member named ?screen?
./src/video/fbcon/SDL_fbvideo.h:183: error: ?SDL_VideoDevice? has no
member named ?offset_x?
./src/video/fbcon/SDL_fbvideo.h:184: error: ?SDL_VideoDevice? has no
member named ?offset_y?
./src/video/fbcon/SDL_fb3dfx.c: In function ?WaitVBL?:
./src/video/fbcon/SDL_fb3dfx.c:35: error: ?SDL_VideoDevice? has no
member named ?hidden?
./src/video/fbcon/SDL_fb3dfx.c:35: error: ?SDL_VideoDevice? has no
member named ?hidden?
./src/video/fbcon/SDL_fb3dfx.c:35: error: ?SDL_VideoDevice? has no
member named ?hidden?
./src/video/fbcon/SDL_fb3dfx.c:36: error: ?SDL_VideoDevice? has no
member named ?hidden?
./src/video/fbcon/SDL_fb3dfx.c:38: error: ?SDL_VideoDevice? has no
member named ?hidden?
./src/video/fbcon/SDL_fb3dfx.c: In function ?WaitIdle?:
./src/video/fbcon/SDL_fb3dfx.c:44: error: ?SDL_VideoDevice? has no
member named ?hidden?
./src/video/fbcon/SDL_fb3dfx.c:44: error: ?SDL_VideoDevice? has no
member named ?hidden?
./src/video/fbcon/SDL_fb3dfx.c:44: error: ?SDL_VideoDevice? has no
member named ?hidden?
./src/video/fbcon/SDL_fb3dfx.c: In function ?FillHWRect?:
./src/video/fbcon/SDL_fb3dfx.c:63: error: ?SDL_VideoDevice? has no
member named ?hidden?
./src/video/fbcon/SDL_fb3dfx.c:66: error: ?SDL_VideoDevice? has no
member named ?screen?
./src/video/fbcon/SDL_fb3dfx.c:67: error: ?SDL_VideoDevice? has no
member named ?hidden?
./src/video/fbcon/SDL_fb3dfx.c:71: error: ?SDL_VideoDevice? has no
member named ?hidden?
./src/video/fbcon/SDL_fb3dfx.c:80: error: ?SDL_VideoDevice? has no
member named ?hidden?
./src/video/fbcon/SDL_fb3dfx.c:81: error: ?SDL_VideoDevice? has no
member named ?hidden?
./src/video/fbcon/SDL_fb3dfx.c:81: warning: cast from pointer to
integer of different size
./src/video/fbcon/SDL_fb3dfx.c:82: error: ?SDL_VideoDevice? has no
member named ?hidden?
./src/video/fbcon/SDL_fb3dfx.c:83: error: ?SDL_VideoDevice? has no
member named ?hidden?
./src/video/fbcon/SDL_fb3dfx.c:84: error: ?SDL_VideoDevice? has no
member named ?hidden?
./src/video/fbcon/SDL_fb3dfx.c:85: error: ?SDL_VideoDevice? has no
member named ?hidden?
./src/video/fbcon/SDL_fb3dfx.c:86: error: ?SDL_VideoDevice? has no
member named ?hidden?
./src/video/fbcon/SDL_fb3dfx.c:90: error: ?SDL_VideoDevice? has no
member named ?screen?
./src/video/fbcon/SDL_fb3dfx.c:91: error: ?SDL_VideoDevice? has no
member named ?hidden?
./src/video/fbcon/SDL_fb3dfx.c: In function ?HWAccelBlit?:
./src/video/fbcon/SDL_fb3dfx.c:100: error: ?current_video? undeclared
(first use in this function)
./src/video/fbcon/SDL_fb3dfx.c:100: error: (Each undeclared identifier
is reported only once
./src/video/fbcon/SDL_fb3dfx.c:100: error: for each function it appears in.)
./src/video/fbcon/SDL_fb3dfx.c:112: error: ?SDL_VideoDevice? has no
member named ?hidden?
./src/video/fbcon/SDL_fb3dfx.c:115: error: ?SDL_VideoDevice? has no
member named ?screen?
./src/video/fbcon/SDL_fb3dfx.c:116: error: ?SDL_VideoDevice? has no
member named ?hidden?
./src/video/fbcon/SDL_fb3dfx.c:120: error: ?SDL_VideoDevice? has no
member named ?hidden?
./src/video/fbcon/SDL_fb3dfx.c:123: error: ?SDL_VideoDevice? has no
member named ?hidden?
./src/video/fbcon/SDL_fb3dfx.c:146: error: ?SDL_SRCCOLORKEY?
undeclared (first use in this function)
./src/video/fbcon/SDL_fb3dfx.c:147: error: ?SDL_VideoDevice? has no
member named ?hidden?
./src/video/fbcon/SDL_fb3dfx.c:148: error: ?SDL_VideoDevice? has no
member named ?hidden?
./src/video/fbcon/SDL_fb3dfx.c:148: error: ?SDL_PixelFormat? has no
member named ?colorkey?
./src/video/fbcon/SDL_fb3dfx.c:149: error: ?SDL_VideoDevice? has no
member named ?hidden?
./src/video/fbcon/SDL_fb3dfx.c:149: error: ?SDL_PixelFormat? has no
member named ?colorkey?
./src/video/fbcon/SDL_fb3dfx.c:150: error: ?SDL_VideoDevice? has no
member named ?hidden?
./src/video/fbcon/SDL_fb3dfx.c:155: error: ?SDL_VideoDevice? has no
member named ?hidden?
./src/video/fbcon/SDL_fb3dfx.c:156: error: ?SDL_VideoDevice? has no
member named ?hidden?
./src/video/fbcon/SDL_fb3dfx.c:156: warning: cast from pointer to
integer of different size
./src/video/fbcon/SDL_fb3dfx.c:157: error: ?SDL_VideoDevice? has no
member named ?hidden?
./src/video/fbcon/SDL_fb3dfx.c:158: error: ?SDL_VideoDevice? has no
member named ?hidden?
./src/video/fbcon/SDL_fb3dfx.c:158: warning: cast from pointer to
integer of different size
./src/video/fbcon/SDL_fb3dfx.c:159: error: ?SDL_VideoDevice? has no
member named ?hidden?
./src/video/fbcon/SDL_fb3dfx.c:160: error: ?SDL_VideoDevice? has no
member named ?hidden?
./src/video/fbcon/SDL_fb3dfx.c:161: error: ?SDL_VideoDevice? has no
member named ?hidden?
./src/video/fbcon/SDL_fb3dfx.c:162: error: ?SDL_VideoDevice? has no
member named ?hidden?
./src/video/fbcon/SDL_fb3dfx.c:163: error: ?SDL_VideoDevice? has no
member named ?hidden?
./src/video/fbcon/SDL_fb3dfx.c:164: error: ?SDL_VideoDevice? has no
member named ?hidden?
./src/video/fbcon/SDL_fb3dfx.c:169: error: ?SDL_VideoDevice? has no
member named ?screen?
./src/video/fbcon/SDL_fb3dfx.c:170: error: ?SDL_VideoDevice? has no
member named ?hidden?
./src/video/fbcon/SDL_fb3dfx.c: In function ?CheckHWBlit?:
./src/video/fbcon/SDL_fb3dfx.c:181: error: ?SDL_HWACCEL? undeclared
(first use in this function)
./src/video/fbcon/SDL_fb3dfx.c:184: error: ?SDL_SRCALPHA? undeclared
(first use in this function)
./src/video/fbcon/SDL_fb3dfx.c:185: error: ?SDL_VideoDevice? has no
member named ?info?
./src/video/fbcon/SDL_fb3dfx.c:189: error: ?SDL_SRCCOLORKEY?
undeclared (first use in this function)
./src/video/fbcon/SDL_fb3dfx.c:190: error: ?SDL_VideoDevice? has no
member named ?info?
./src/video/fbcon/SDL_fb3dfx.c:198: error: ?struct SDL_BlitMap? has no
member named ?hw_blit?
./src/video/fbcon/SDL_fb3dfx.c: In function ?FB_3DfxAccel?:
./src/video/fbcon/SDL_fb3dfx.c:207: error: ?SDL_VideoDevice? has no
member named ?CheckHWBlit?
./src/video/fbcon/SDL_fb3dfx.c:208: error: ?SDL_VideoDevice? has no
member named ?hidden?
./src/video/fbcon/SDL_fb3dfx.c:209: error: ?SDL_VideoDevice? has no
member named ?hidden?
./src/video/fbcon/SDL_fb3dfx.c:212: error: ?SDL_VideoDevice? has no
member named ?hidden?
./src/video/fbcon/SDL_fb3dfx.c:213: error: ?SDL_VideoDevice? has no
member named ?hidden?
./src/video/fbcon/SDL_fb3dfx.c:216: error: ?SDL_VideoDevice? has no
member named ?info?
./src/video/fbcon/SDL_fb3dfx.c:217: error: ?SDL_VideoDevice? has no
member named ?FillHWRect?
./src/video/fbcon/SDL_fb3dfx.c:220: error: ?SDL_VideoDevice? has no
member named ?info?
./src/video/fbcon/SDL_fb3dfx.c:221: error: ?SDL_VideoDevice? has no
member named ?info?
./src/video/fbcon/SDL_fb3dfx.c:222: error: ?SDL_VideoDevice? has no
member named ?SetHWColorKey?
make: *** [build/SDL_fb3dfx.lo] Error 1

I’m using Linux Mint 7 Gloria x64 (Ubuntu 9.04) on an Athlon 64.

I used this configure line:
./configure --prefix=$HOME/sdl-1.3 --enable-ssemath --enable-sse2
–enable-video-fbcon --enable-video-directfb --enable-video-svga
–enable-video-vgl --enable-clock_gettime

2009/7/27 Kenneth Bull <@Kenneth_Bull>:

I’m using Linux Mint 7 Gloria x64 (Ubuntu 9.04) on an Athlon 64.

I used this configure line:
./configure --prefix=$HOME/sdl-1.3 --enable-ssemath --enable-sse2
–enable-video-fbcon --enable-video-directfb --enable-video-svga
–enable-video-vgl --enable-clock_gettime

Apparently also fails for --enable-video-svga:

libtool: compile: gcc -g -O2 -I./include -D_GNU_SOURCE=1 -mmmx
-m3dnow -msse -msse2 -fvisibility=hidden -D_REENTRANT
-I/usr/include/directfb -D_REENTRANT -D_REENTRANT
-DHAVE_LINUX_VERSION_H -c ./src/video/svga/SDL_svgaevents.c -fPIC
-DPIC -o build/.libs/SDL_svgaevents.o
In file included from ./src/video/svga/SDL_svgaevents.c:40:
./src/video/svga/SDL_svgavideo.h:31:1: warning: “_THIS” redefined
In file included from ./src/video/svga/…/…/events/SDL_sysevents.h:24,
from ./src/video/svga/SDL_svgaevents.c:38:
./src/video/svga/…/…/events/…/video/SDL_sysvideo.h:180:1: warning:
this is the location of the previous definition
./src/video/svga/SDL_svgaevents.c: In function ?SVGA_mousecallback?:
./src/video/svga/SDL_svgaevents.c:161: warning: passing argument 1 of
?SDL_GetMouseState? makes integer from pointer without a cast
./src/video/svga/SDL_svgaevents.c:161: error: too few arguments to
function ?SDL_GetMouseState?
./src/video/svga/SDL_svgaevents.c:165: warning: passing argument 1 of
?SDL_GetMouseState? makes integer from pointer without a cast
./src/video/svga/SDL_svgaevents.c:165: error: too few arguments to
function ?SDL_GetMouseState?
./src/video/svga/SDL_svgaevents.c:170: warning: passing argument 1 of
?SDL_GetMouseState? makes integer from pointer without a cast
./src/video/svga/SDL_svgaevents.c:170: error: too few arguments to
function ?SDL_GetMouseState?
./src/video/svga/SDL_svgaevents.c:174: warning: passing argument 1 of
?SDL_GetMouseState? makes integer from pointer without a cast
./src/video/svga/SDL_svgaevents.c:174: error: too few arguments to
function ?SDL_GetMouseState?
./src/video/svga/SDL_svgaevents.c:179: warning: passing argument 1 of
?SDL_GetMouseState? makes integer from pointer without a cast
./src/video/svga/SDL_svgaevents.c:179: error: too few arguments to
function ?SDL_GetMouseState?
./src/video/svga/SDL_svgaevents.c:183: warning: passing argument 1 of
?SDL_GetMouseState? makes integer from pointer without a cast
./src/video/svga/SDL_svgaevents.c:183: error: too few arguments to
function ?SDL_GetMouseState?
./src/video/svga/SDL_svgaevents.c: In function ?SVGA_InitOSKeymap?:
./src/video/svga/SDL_svgaevents.c:223: error: ?SDLK_1? undeclared
(first use in this function)
./src/video/svga/SDL_svgaevents.c:223: error: (Each undeclared
identifier is reported only once
./src/video/svga/SDL_svgaevents.c:223: error: for each function it appears in.)
./src/video/svga/SDL_svgaevents.c:224: error: ?SDLK_2? undeclared
(first use in this function)
./src/video/svga/SDL_svgaevents.c:225: error: ?SDLK_3? undeclared
(first use in this function)
./src/video/svga/SDL_svgaevents.c:226: error: ?SDLK_4? undeclared
(first use in this function)
./src/video/svga/SDL_svgaevents.c:227: error: ?SDLK_5? undeclared
(first use in this function)
./src/video/svga/SDL_svgaevents.c:228: error: ?SDLK_6? undeclared
(first use in this function)
./src/video/svga/SDL_svgaevents.c:229: error: ?SDLK_7? undeclared
(first use in this function)
./src/video/svga/SDL_svgaevents.c:230: error: ?SDLK_8? undeclared
(first use in this function)
./src/video/svga/SDL_svgaevents.c:231: error: ?SDLK_9? undeclared
(first use in this function)
./src/video/svga/SDL_svgaevents.c:232: error: ?SDLK_0? undeclared
(first use in this function)
./src/video/svga/SDL_svgaevents.c:233: error: ?SDLK_MINUS? undeclared
(first use in this function)
./src/video/svga/SDL_svgaevents.c:234: error: ?SDLK_EQUALS? undeclared
(first use in this function)
./src/video/svga/SDL_svgaevents.c:237: error: ?SDLK_q? undeclared
(first use in this function)
./src/video/svga/SDL_svgaevents.c:238: error: ?SDLK_w? undeclared
(first use in this function)
./src/video/svga/SDL_svgaevents.c:239: error: ?SDLK_e? undeclared
(first use in this function)
./src/video/svga/SDL_svgaevents.c:240: error: ?SDLK_r? undeclared
(first use in this function)
./src/video/svga/SDL_svgaevents.c:241: error: ?SDLK_t? undeclared
(first use in this function)
./src/video/svga/SDL_svgaevents.c:242: error: ?SDLK_y? undeclared
(first use in this function)
./src/video/svga/SDL_svgaevents.c:243: error: ?SDLK_u? undeclared
(first use in this function)
./src/video/svga/SDL_svgaevents.c:244: error: ?SDLK_i? undeclared
(first use in this function)
./src/video/svga/SDL_svgaevents.c:245: error: ?SDLK_o? undeclared
(first use in this function)
./src/video/svga/SDL_svgaevents.c:246: error: ?SDLK_p? undeclared
(first use in this function)
./src/video/svga/SDL_svgaevents.c:247: error: ?SDLK_LEFTBRACKET?
undeclared (first use in this function)
./src/video/svga/SDL_svgaevents.c:248: error: ?SDLK_RIGHTBRACKET?
undeclared (first use in this function)
./src/video/svga/SDL_svgaevents.c:251: error: ?SDLK_a? undeclared
(first use in this function)
./src/video/svga/SDL_svgaevents.c:252: error: ?SDLK_s? undeclared
(first use in this function)
./src/video/svga/SDL_svgaevents.c:253: error: ?SDLK_d? undeclared
(first use in this function)
./src/video/svga/SDL_svgaevents.c:254: error: ?SDLK_f? undeclared
(first use in this function)
./src/video/svga/SDL_svgaevents.c:255: error: ?SDLK_g? undeclared
(first use in this function)
./src/video/svga/SDL_svgaevents.c:256: error: ?SDLK_h? undeclared
(first use in this function)
./src/video/svga/SDL_svgaevents.c:257: error: ?SDLK_j? undeclared
(first use in this function)
./src/video/svga/SDL_svgaevents.c:258: error: ?SDLK_k? undeclared
(first use in this function)
./src/video/svga/SDL_svgaevents.c:259: error: ?SDLK_l? undeclared
(first use in this function)
./src/video/svga/SDL_svgaevents.c:260: error: ?SDLK_SEMICOLON?
undeclared (first use in this function)
./src/video/svga/SDL_svgaevents.c:261: error: ?SDLK_QUOTE? undeclared
(first use in this function)
./src/video/svga/SDL_svgaevents.c:262: error: ?SDLK_BACKQUOTE?
undeclared (first use in this function)
./src/video/svga/SDL_svgaevents.c:264: error: ?SDLK_BACKSLASH?
undeclared (first use in this function)
./src/video/svga/SDL_svgaevents.c:265: error: ?SDLK_z? undeclared
(first use in this function)
./src/video/svga/SDL_svgaevents.c:266: error: ?SDLK_x? undeclared
(first use in this function)
./src/video/svga/SDL_svgaevents.c:267: error: ?SDLK_c? undeclared
(first use in this function)
./src/video/svga/SDL_svgaevents.c:268: error: ?SDLK_v? undeclared
(first use in this function)
./src/video/svga/SDL_svgaevents.c:269: error: ?SDLK_b? undeclared
(first use in this function)
./src/video/svga/SDL_svgaevents.c:270: error: ?SDLK_n? undeclared
(first use in this function)
./src/video/svga/SDL_svgaevents.c:271: error: ?SDLK_m? undeclared
(first use in this function)
./src/video/svga/SDL_svgaevents.c:272: error: ?SDLK_COMMA? undeclared
(first use in this function)
./src/video/svga/SDL_svgaevents.c:273: error: ?SDLK_PERIOD? undeclared
(first use in this function)
./src/video/svga/SDL_svgaevents.c:274: error: ?SDLK_SLASH? undeclared
(first use in this function)
./src/video/svga/SDL_svgaevents.c:290: error: ?SDLK_NUMLOCK?
undeclared (first use in this function)
./src/video/svga/SDL_svgaevents.c:291: error: ?SDLK_SCROLLOCK?
undeclared (first use in this function)
./src/video/svga/SDL_svgaevents.c:292: error: ?SDLK_KP7? undeclared
(first use in this function)
./src/video/svga/SDL_svgaevents.c:294: error: ?SDLK_KP8? undeclared
(first use in this function)
./src/video/svga/SDL_svgaevents.c:296: error: ?SDLK_KP9? undeclared
(first use in this function)
./src/video/svga/SDL_svgaevents.c:299: error: ?SDLK_KP4? undeclared
(first use in this function)
./src/video/svga/SDL_svgaevents.c:301: error: ?SDLK_KP5? undeclared
(first use in this function)
./src/video/svga/SDL_svgaevents.c:302: error: ?SDLK_KP6? undeclared
(first use in this function)
./src/video/svga/SDL_svgaevents.c:305: error: ?SDLK_KP1? undeclared
(first use in this function)
./src/video/svga/SDL_svgaevents.c:307: error: ?SDLK_KP2? undeclared
(first use in this function)
./src/video/svga/SDL_svgaevents.c:309: error: ?SDLK_KP3? undeclared
(first use in this function)
./src/video/svga/SDL_svgaevents.c:311: error: ?SDLK_KP0? undeclared
(first use in this function)
./src/video/svga/SDL_svgaevents.c:313: error: ?SDLK_LESS? undeclared
(first use in this function)
./src/video/svga/SDL_svgaevents.c:320: error: ?SDLK_PRINT? undeclared
(first use in this function)
./src/video/svga/SDL_svgaevents.c:322: error: ?SDLK_BREAK? undeclared
(first use in this function)
./src/video/svga/SDL_svgaevents.c:335: error: ?SDLK_RSUPER? undeclared
(first use in this function)
./src/video/svga/SDL_svgaevents.c:336: error: ?SDLK_LSUPER? undeclared
(first use in this function)
./src/video/svga/SDL_svgaevents.c: In function ?TranslateKey?:
./src/video/svga/SDL_svgaevents.c:351: error: ?SDL_TranslateUNICODE?
undeclared (first use in this function)
make: *** [build/SDL_svgaevents.lo] Error 1

Yes, the SVGA and framebuffer console drivers haven’t been ported to SDL 1.3
yet. Volunteers welcome! :)–
-Sam Lantinga, Founder and President, Galaxy Gameworks LLC