I've got an Riva TNT2 myself here [1] as well and have the same problems when compiling with scons (2007-12-26 source package).
I suspect that the vdrift code just assumes some hardware-functionality to be there at all times or something like this?
Code:
build/graphics.o: In function `FBTEXTURE_GL::End()':
/mnt/games/vdrift/src/graphics.cpp:1068: undefined reference to `glBindFramebufferEXT'
build/graphics.o: In function `FBTEXTURE_GL::Begin(float)':
/mnt/games/vdrift/src/graphics.cpp:1060: undefined reference to `glBindFramebufferEXT'
build/graphics.o: In function `FBTEXTURE_GL::DeInit()':
/mnt/games/vdrift/src/graphics.cpp:1049: undefined reference to `glDeleteFramebuffersEXT'
/mnt/games/vdrift/src/graphics.cpp:1051: undefined reference to `glDeleteRenderbuffersEXT'
build/graphics.o: In function `FBTEXTURE_GL::Init(int, int, bool, bool)':
/mnt/games/vdrift/src/graphics.cpp:960: undefined reference to `glGenFramebuffersEXT'
/mnt/games/vdrift/src/graphics.cpp:995: undefined reference to `glBindFramebufferEXT'
/mnt/games/vdrift/src/graphics.cpp:1000: undefined reference to `glGenRenderbuffersEXT'
/mnt/games/vdrift/src/graphics.cpp:1001: undefined reference to `glBindRenderbufferEXT'
/mnt/games/vdrift/src/graphics.cpp:1002: undefined reference to `glRenderbufferStorageEXT'
/mnt/games/vdrift/src/graphics.cpp:1005: undefined reference to `glFramebufferRenderbufferEXT'
/mnt/games/vdrift/src/graphics.cpp:1018: undefined reference to `glFramebufferTexture2DEXT'
/mnt/games/vdrift/src/graphics.cpp:1026: undefined reference to `glCheckFramebufferStatusEXT'
/mnt/games/vdrift/src/graphics.cpp:1040: undefined reference to `glBindFramebufferEXT'
build/shader.o: In function `SHADER::UploadActiveShaderParameter1f(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, float)':
/mnt/games/vdrift/src/shader.cpp:237: undefined reference to `glUniform1f'
build/shader.o: In function `SHADER::UploadActiveShaderParameter1i(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, int)':
/mnt/games/vdrift/src/shader.cpp:229: undefined reference to `glUniform1i'
build/shader.o: In function `SHADER::UploadMat16(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, float*)':
/mnt/games/vdrift/src/shader.cpp:221: undefined reference to `glUniformMatrix4fv'
build/shader.o: In function `SHADER::EndScene()':
/mnt/games/vdrift/src/shader.cpp:135: undefined reference to `glUniform1f'
/mnt/games/vdrift/src/shader.cpp:138: undefined reference to `glUniform1f'
/mnt/games/vdrift/src/shader.cpp:141: undefined reference to `glUniform1f'
/mnt/games/vdrift/src/shader.cpp:144: undefined reference to `glUniform1f'
/mnt/games/vdrift/src/shader.cpp:147: undefined reference to `glUniform1f'
/mnt/games/vdrift/src/shader.cpp:154: undefined reference to `glUniform3f'
/mnt/games/vdrift/src/shader.cpp:168: undefined reference to `glUniform1f'
/mnt/games/vdrift/src/shader.cpp:171: undefined reference to `glUniform1f'
/mnt/games/vdrift/src/shader.cpp:174: undefined reference to `glUniform1f'
collect2: ld returned 1 exit status
scons: *** [build/vdrift] Error 1
scons: building terminated because of errors.
Code:
$ glxinfo
name of display: :0.0
display: :0 screen: 0
direct rendering: Yes
server glx vendor string: NVIDIA Corporation
server glx version string: 1.3
server glx extensions:
GLX_EXT_visual_info, GLX_EXT_visual_rating, GLX_SGIX_fbconfig,
GLX_SGIX_pbuffer, GLX_SGI_video_sync, GLX_SGI_swap_control
client glx vendor string: NVIDIA Corporation
client glx version string: 1.3
client glx extensions:
GLX_ARB_get_proc_address, GLX_ARB_multisample, GLX_EXT_visual_info,
GLX_EXT_visual_rating, GLX_EXT_import_context, GLX_SGI_video_sync,
GLX_NV_swap_group, GLX_NV_video_out, GLX_SGIX_fbconfig, GLX_SGIX_pbuffer,
GLX_SGI_swap_control, GLX_NV_float_buffer
GLX version: 1.3
GLX extensions:
GLX_EXT_visual_info, GLX_EXT_visual_rating, GLX_SGIX_fbconfig,
GLX_SGIX_pbuffer, GLX_SGI_video_sync, GLX_SGI_swap_control,
GLX_ARB_get_proc_address
OpenGL vendor string: NVIDIA Corporation
OpenGL renderer string: RIVA TNT2/AGP/3DNOW!
OpenGL version string: 1.5.3 NVIDIA 71.85
OpenGL extensions:
GL_ARB_imaging, GL_ARB_multitexture, GL_ARB_point_parameters,
GL_ARB_texture_env_add, GL_ARB_texture_mirrored_repeat,
GL_ARB_transpose_matrix, GL_ARB_vertex_buffer_object, GL_ARB_window_pos,
GL_EXT_texture_env_add, GL_EXT_abgr, GL_EXT_bgra,
GL_EXT_compiled_vertex_array, GL_EXT_draw_range_elements,
GL_EXT_fog_coord, GL_EXT_multi_draw_arrays, GL_EXT_packed_pixels,
GL_EXT_pixel_buffer_object, GL_EXT_point_parameters,
GL_EXT_rescale_normal, GL_EXT_secondary_color,
GL_EXT_separate_specular_color, GL_EXT_stencil_wrap,
GL_EXT_texture_edge_clamp, GL_EXT_texture_env_combine,
GL_EXT_texture_lod_bias, GL_EXT_texture_object, GL_EXT_vertex_array,
GL_IBM_rasterpos_clip, GL_IBM_texture_mirrored_repeat,
GL_KTX_buffer_region, GL_NV_blend_square, GL_NV_fog_distance,
GL_NV_light_max_exponent, GL_NV_packed_depth_stencil,
GL_NV_texgen_reflection, GL_NV_texture_env_combine4, GL_SGIS_multitexture,
GL_SUN_slice_accum
visual x bf lv rg d st colorbuffer ax dp st accumbuffer ms cav
id dep cl sp sz l ci b ro r g b a bf th cl r g b a ns b eat
----------------------------------------------------------------------
0x21 24 tc 0 32 0 r y . 8 8 8 0 4 24 8 16 16 16 16 0 0 None
0x22 24 dc 0 32 0 r y . 8 8 8 0 4 24 8 16 16 16 16 0 0 None
0x23 24 tc 0 32 0 r y . 8 8 8 8 4 24 8 16 16 16 16 0 0 None
0x24 24 tc 0 32 0 r . . 8 8 8 0 4 24 8 16 16 16 16 0 0 None
0x25 24 tc 0 32 0 r . . 8 8 8 8 4 24 8 16 16 16 16 0 0 None
0x26 24 tc 0 32 0 r y . 8 8 8 0 4 0 0 16 16 16 16 0 0 None
0x27 24 tc 0 32 0 r y . 8 8 8 8 4 0 0 16 16 16 16 0 0 None
0x28 24 tc 0 32 0 r . . 8 8 8 0 4 0 0 16 16 16 16 0 0 None
0x29 24 tc 0 32 0 r . . 8 8 8 8 4 0 0 16 16 16 16 0 0 None
0x2a 24 dc 0 32 0 r y . 8 8 8 8 4 24 8 16 16 16 16 0 0 None
0x2b 24 dc 0 32 0 r . . 8 8 8 0 4 24 8 16 16 16 16 0 0 None
0x2c 24 dc 0 32 0 r . . 8 8 8 8 4 24 8 16 16 16 16 0 0 None
0x2d 24 dc 0 32 0 r y . 8 8 8 0 4 0 0 16 16 16 16 0 0 None
0x2e 24 dc 0 32 0 r y . 8 8 8 8 4 0 0 16 16 16 16 0 0 None
0x2f 24 dc 0 32 0 r . . 8 8 8 0 4 0 0 16 16 16 16 0 0 None
0x30 24 dc 0 32 0 r . . 8 8 8 8 4 0 0 16 16 16 16 0 0 None
EDIT: Additional info ... when I tried to run the binaries in the VDrift-2007-03-23-xxxx-2.package packages (which i could not install normally btw. because of some autopackage version mismatch but I had to unpack it manually) I could start the binary and navigate the menu, but the actual game did end with a segfault (I'm guessing because of the GL stuff).
Great game, I'm looking forward to play it
Werner
[1] It's funny how many of these cards (or similar "powerful" ones) are still around
I'm actually playing Nexuiz and some other 3D games with it and it didn't yet dissapoint (except for the driver policy of nvidia)