LINUX.ORG.RU
ФорумTalks

torcs


0

0

Линуксоиды, у меня случилось горе!
Компилирую я OpenOffice, tuxracer, bzflag, foobillard, neverball...
Радуюсь что игрушки крутые у меня есть. И тут я подумал, стрелялки
есть(quake3, bzflag), стратегии есть(boson), а гоночек нет!

Скачал я torcs. 18 файлов на 53 мегабайта. И начал компилировать.
У меня джента, так что с компиляцией проблем нет.

И тут раз - ОШИБКА!!!
Версия 1.2.2. До этого она компилировалась на этой же тачке.
Система была тоже gentoo.

Вот что выдает:

g++ -I/var/tmp/portage/torcs-1.2.2/work/torcs-1.2.2/export/include  -O2 -march=pentium4 -fomit-frame-pointer -Wall -Wstrict-prototypes -O3 -mieee-fp -Wall -Wstrict-prototypes -O3 -mieee-fp  -D_SVID_SOURCE -D_BSD_SOURCE -DSHM  -c grmultitexstate.cpp
grmultitexstate.cpp: In member function `virtual void
   grMultiTexState::apply(int)':
grmultitexstate.cpp:30: error: `glActiveTexture' undeclared (first use this
   function)
grmultitexstate.cpp:30: error: (Each undeclared identifier is reported only
   once for each function it appears in.)
make[5]: *** [grmultitexstate.o] Ошибка 1
make[5]: Leaving directory `/var/tmp/portage/torcs-1.2.2/work/torcs-1.2.2/src/modules/graphic/ssggraph'
make[4]: *** [subdirs] Ошибка 1
make[4]: Leaving directory `/var/tmp/portage/torcs-1.2.2/work/torcs-1.2.2/src/modules/graphic'
make[3]: *** [subdirs] Ошибка 1
make[3]: Leaving directory `/var/tmp/portage/torcs-1.2.2/work/torcs-1.2.2/src/modules'
make[2]: *** [subdirs] Ошибка 1
make[2]: Leaving directory `/var/tmp/portage/torcs-1.2.2/work/torcs-1.2.2/src'
make[1]: *** [subdirs] Ошибка 1
make[1]: Leaving directory `/var/tmp/portage/torcs-1.2.2/work/torcs-1.2.2'
make: *** [restart] Ошибка 2

!!! ERROR: games-sports/torcs-1.2.2 failed.
!!! Function src_compile, Line 52, Exitcode 2
!!! (no error message)
!!! If you need support, post the topmost build error, NOT this status message.

bash-2.05b#      
anonymous

И что, gentoo есть, а разобраться в простейшей ошибке компиляции никак? Ищите header с функцией glActiveTexture и смотрите grmultitexstate.cpp, может опечатка в исходнике, может еще чего.

phoenix ★★★★
()
Ответ на: комментарий от anonymous

Вот прикол!
В модуле grmultitexstate.cpp на 30-й строке вообще нет glActiveTexture. Там вызывается метод glActiveTextureARB и передается ему GL_TEXTURE0_ARB.

А поискал файлы с содержимым glActiveTexture. Поиск выдал шесть модулей, но в них встречается glActiveTextureARB.

anonymous
()

проблему решил :)
в файл grmain.h
нужно добавить кое-что:

находишь строки:
#if GL_VERSION_1_3
#define glActiveTextureARB glActiveTexture
#define glMultiTexCoord2fvARB glMultiTexCoord2fv
#define glClientActiveTextureARB glClientActiveTexture
#endif

и вставляешь вот эти строки:
extern PFNGLMULTITEXCOORD2FARBPROC glMultiTexCoord2fARB ;
extern PFNGLMULTITEXCOORD2FVARBPROC glMultiTexCoord2fvARB;
extern PFNGLACTIVETEXTUREARBPROC   glActiveTextureARB;
extern PFNGLCLIENTACTIVETEXTUREARBPROC glClientActiveTextureARB;

так что бы получилось:
#if GL_VERSION_1_3
#define glActiveTextureARB glActiveTexture
#define glMultiTexCoord2fvARB glMultiTexCoord2fv
#define glClientActiveTextureARB glClientActiveTexture
extern PFNGLMULTITEXCOORD2FARBPROC glMultiTexCoord2fARB ;
extern PFNGLMULTITEXCOORD2FVARBPROC glMultiTexCoord2fvARB;
extern PFNGLACTIVETEXTUREARBPROC   glActiveTextureARB ;
extern PFNGLCLIENTACTIVETEXTUREARBPROC glClientActiveTextureARB ;
#endif

и все скомпилелось :)

goodwin ★★
()
Ответ на: комментарий от goodwin

glext.h есть.
В файле grmultitexstate.cpp нет включения этого заголовочного файла.
Я добавил в начало его, но это не помогло.

При компиляции та же ошибка.

anonymous
()
Ответ на: комментарий от anonymous

странно, сегфолт
Visual Properties Report
------------------------
z-buffer depth: 24
alpha channel : enabled
antialiasing  : enabled
/usr/games/bin/torcs: line 54: 24188 Segmentation fault      $LIBDIR/torcs-bin -l $LOCAL_CONF -L $LIBDIR -D $DATADIR $*
неудача :(

goodwin ★★
()
Ответ на: комментарий от goodwin

ДА, скомпилировалось, но сигфолтится:

bash-2.05b# torcs
/root/.torcs created, copying/linking game data
Visual Properties Report
------------------------
z-buffer depth: 24
alpha channel : enabled
antialiasing  : enabled
Visual Properties Report
------------------------
z-buffer depth: 24
alpha channel : enabled
antialiasing  : enabled
WARNING: ssgLoadTexture: Cannot determine file type for './(null)'
GfParmCheckHandle: parameter "Rear Right Suspension/packers" out of bounds: min:0 max:0.01 val:0.02 in ("Tanhoj" - "drivers/tanhoj/tracksdata/car_g-track-3.xml")
GfParmCheckHandle: parameter "Rear Left Suspension/packers" out of bounds: min:0 max:0.01 val:0.02 in ("Tanhoj" - "drivers/tanhoj/tracksdata/car_g-track-3.xml")
/usr/games/bin/torcs: line 54:  1378 Segmentation fault      $LIBDIR/torcs-bin -l $LOCAL_CONF -L $LIBDIR -D $DATADIR $*
bash-2.05b# torcs
Visual Properties Report
------------------------
z-buffer depth: 24
alpha channel : enabled
antialiasing  : enabled
WARNING: grscene:initBackground Failed to open shadow2.rgb for reading
WARNING:         no shadow mapping on cars for this track
GfParmCheckHandle: parameter "Rear Right Brake/piston area" out of bounds: min:0.0025 max:0.02 val:0.0015 in ("Ferrari Dino 246 GT" - "cars/kc-dino/kc-dino.xml")
GfParmCheckHandle: parameter "Rear Left Brake/piston area" out of bounds: min:0.0025 max:0.02 val:0.0015 in ("Ferrari Dino 246 GT" - "cars/kc-dino/kc-dino.xml")
linuxModLoad: ...  /usr/games/lib/torcs/drivers/inferno3/inferno3.so: cannot open shared object file: No such file or directory
Pb with loading /usr/games/lib/torcs/drivers/inferno3/inferno3.so driver
No driver for that race...
bash-2.05b

anonymous
()

Вообще искать ошибки при компиляции уместно на forums.gentoo.org

init ★★★★★
()

Можно попробовать сделать opengl-update nvidia навсякий случай и перекомпилировать.

init ★★★★★
()

Можно узнать причину, запустив glxinfo и убедившись, что там отсутствует GL_ARB_texture_compression в списке расширений.

Если же у вас видеокарта не отстой, то можно попробовать следующее:

1) поставить драйвер, обеспечивающий аппаратное ускорение (например nvidia-kernel и nvidia-glx - который и предоставляет хидеры и библиотеки для OpenGL)

2) Попробовать, если не помогает первое, попробуйте еще opengl-update

Esh ★★★★
()
Ответ на: комментарий от Esh

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,
    GLX_ARB_multisample, GLX_NV_float_buffer
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 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_multisample, GLX_NV_float_buffer, GLX_ARB_get_proc_address
OpenGL vendor string: NVIDIA Corporation
OpenGL renderer string: GeForce FX 5700/AGP/SSE2
OpenGL version string: 1.5.2 NVIDIA 66.29
OpenGL extensions:
    GL_ARB_depth_texture, GL_ARB_fragment_program,
    GL_ARB_fragment_program_shadow, GL_ARB_fragment_shader, GL_ARB_imaging,
    GL_ARB_multisample, GL_ARB_multitexture, GL_ARB_occlusion_query,
    GL_ARB_point_parameters, GL_ARB_point_sprite, GL_ARB_shadow,
    GL_ARB_shader_objects, GL_ARB_shading_language_100,
    GL_ARB_texture_border_clamp, GL_ARB_texture_compression,
    GL_ARB_texture_cube_map, GL_ARB_texture_env_add,
    GL_ARB_texture_env_combine, GL_ARB_texture_env_dot3,
    GL_ARB_texture_mirrored_repeat, GL_ARB_texture_rectangle,
    GL_ARB_transpose_matrix, GL_ARB_vertex_buffer_object,
    GL_ARB_vertex_program, GL_ARB_vertex_shader, GL_ARB_window_pos,
    GL_S3_s3tc, GL_EXT_texture_env_add, GL_EXT_abgr, GL_EXT_bgra,
    GL_EXT_blend_color, GL_EXT_blend_func_separate, GL_EXT_blend_minmax,
    GL_EXT_blend_subtract, GL_EXT_compiled_vertex_array, GL_EXT_Cg_shader,
    GL_EXT_depth_bounds_test, GL_EXT_draw_range_elements, GL_EXT_fog_coord,
    GL_EXT_multi_draw_arrays, GL_EXT_packed_pixels, GL_EXT_paletted_texture,
    GL_EXT_pixel_buffer_object, GL_EXT_point_parameters,
    GL_EXT_rescale_normal, GL_EXT_secondary_color,
    GL_EXT_separate_specular_color, GL_EXT_shadow_funcs,
    GL_EXT_shared_texture_palette, GL_EXT_stencil_two_side,
    GL_EXT_stencil_wrap, GL_EXT_texture3D, GL_EXT_texture_compression_s3tc,
    GL_EXT_texture_cube_map, GL_EXT_texture_edge_clamp,
    GL_EXT_texture_env_combine, GL_EXT_texture_env_dot3,
    GL_EXT_texture_filter_anisotropic, GL_EXT_texture_lod,
    GL_EXT_texture_lod_bias, GL_EXT_texture_object, GL_EXT_vertex_array,
    GL_HP_occlusion_test, GL_IBM_rasterpos_clip,
    GL_IBM_texture_mirrored_repeat, GL_KTX_buffer_region, GL_NV_blend_square,
    GL_NV_copy_depth_to_color, GL_NV_depth_clamp, GL_NV_fence,
    GL_NV_float_buffer, GL_NV_fog_distance, GL_NV_fragment_program,
    GL_NV_fragment_program_option, GL_NV_half_float, GL_NV_light_max_exponent,
    GL_NV_multisample_filter_hint, GL_NV_occlusion_query,
    GL_NV_packed_depth_stencil, GL_NV_pixel_data_range, GL_NV_point_sprite,
    GL_NV_primitive_restart, GL_NV_register_combiners,
    GL_NV_register_combiners2, GL_NV_texgen_reflection,
    GL_NV_texture_compression_vtc, GL_NV_texture_env_combine4,
    GL_NV_texture_expand_normal, GL_NV_texture_rectangle,
    GL_NV_texture_shader, GL_NV_texture_shader2, GL_NV_texture_shader3,
    GL_NV_vertex_array_range, GL_NV_vertex_array_range2, GL_NV_vertex_program,
    GL_NV_vertex_program1_1, GL_NV_vertex_program2,
    GL_NV_vertex_program2_option, GL_SGIS_generate_mipmap,
    GL_SGIS_texture_lod, GL_SGIX_depth_texture, GL_SGIX_shadow,
    GL_SUN_slice_accum
glu version: 1.3
glu extensions:
    GLU_EXT_nurbs_tessellator, GLU_EXT_object_space_tess

Карточка FX5700

anonymous
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.