Steam for Linux

Steam for Linux

Team fortress 2 error: glColorMaskIndexedEXT
I downloaded TF2, but when I run it, I get the following error:

Could not find required OpenGL entry point 'glColorMaskIndexedEXT'! Either your video card is unsupported, or your OpenGL driver needs to be updated.

I have Ubuntu 12.10 (32-bit) installed on my system which has an nvidia Geforce Go 7400 graphics card. My current nvidia graphics driver version is 304.64.

I read somewhere that the game works fine on Windows using the same graphics card, so I'm not sure if it is a problem with the driver or if the video card itself does not support this function.

Does anyone have suggestions?

EDIT: check out Fibble's post based on RunningRiot's work for a workaround. This is comment #106 in the comments.
Editat ultima dată de bl33ding_silence; 29 mart. 2013 la 14:25
< >
Se afișează 46-60 din 127 comentarii
I'll chime in with a "me too". The problem seems to affect all nVidia G71GL based cards. I have a Quadro FX 3500 that this problem is manifesting itself with.

Relevant system info:
Operating System Version: Ubuntu 12.04.1 LTS (64 bit) Kernel Name: Linux Kernel Version: 3.2.0-29-generic X Server vendor: The X.Org Foundation X Server release: 11103000

Video Card:
Driver: NVIDIA Corporation Quadro FX 3500/PCIe/SSE2 Driver Version: 2.1.2 NVIDIA 304.64 Desktop Color Depth: 24 bits per pixel Monitor Refresh Rate: 60 Hz VendorID: 0x10de DeviceID: 0x29d Number of Monitors: 1 Number of Logical Video Cards: 1 Primary Display Resolution: 1920 x 1080 Desktop Resolution: 1920 x 1080 Primary Display Size: 18.78" x 10.55" (21.54" diag) 47.7cm x 26.8cm (54.7cm diag) Primary Bus: PCI Express 16x Primary VRAM Not Detected Supported MSAA Modes: 2x 4x 8x 16x

Terminal output when running TF2:
SDL video target is 'x11' SDL video target is 'x11' SDL failed to create GL compatibility profile (whichProfile=0! This system supports the OpenGL extension GL_EXT_framebuffer_object. This system supports the OpenGL extension GL_EXT_framebuffer_blit. This system supports the OpenGL extension GL_EXT_framebuffer_multisample. This system DOES NOT support the OpenGL extension GL_APPLE_fence. This system supports the OpenGL extension GL_NV_fence. This system supports the OpenGL extension GL_ARB_sync. This system DOES NOT support the OpenGL extension GL_EXT_draw_buffers2. Could not find required OpenGL entry point 'glColorMaskIndexedEXT'! Either your video card is unsupported, or your OpenGL driver needs to be updated. Game removed: AppID 520 "Team Fortress 2 Beta", ProcID 15079
"me too"...

System: Ubuntu 12.04
Laptop: Dell Inspiron E1505,
Graphic card: ATI Radeon X1300 Moblity
Graphic driver: open driver
01:00.0 VGA compatible controller: Advanced Micro Devices [AMD] nee ATI M52 [Mobility Radeon X1300] (prog-if 00 [VGA controller]) Subsystem: Dell Device 2003 Flags: bus master, fast devsel, latency 0, IRQ 16 Memory at c0000000 (32-bit, prefetchable) [size=256M] I/O ports at ee00 [size=256] Memory at dfdf0000 (32-bit, non-prefetchable) [size=64K] [virtual] Expansion ROM at dfd00000 [disabled] [size=128K] Capabilities: [50] Power Management version 2 Capabilities: [58] Express Legacy Endpoint, MSI 00 Capabilities: [80] MSI: Enable- Count=1/1 Maskable- 64bit+ Kernel driver in use: radeon Kernel modules: radeon
Editat ultima dată de Robert.Ka; 10 dec. 2012 la 10:17
Same problem with GeForce 7600 Go and Nvidia 304 drivers, ubuntu 12.04 ;(
D.A.R.T 10 dec. 2012 la 11:51 
same issue here

i have tryed the 310 drives but those dont seem to load into xorg.
current driver 304
will poke around to find a solution/information
seems i just have it with Team Fortress 2
but if i start trine2 it works fine

01:00.0 VGA compatible controller: NVIDIA Corporation G73 [GeForce Go 7600] (rev a1)

DISTRIB_DESCRIPTION="Ubuntu 12.04.1 LTS"
Editat ultima dată de D.A.R.T; 10 dec. 2012 la 11:56
Postat inițial de cientista:
@RunningRiot

I have opensuse 12.2 x86_64 and a geforce go 7300 with 304.64 driver, tried the hack you described..

I compiled your program for 64bit and apply to 64bit version of the nvidia gl driver ("/usr/lib64/libGL.so.304.64") and compiled in 32bit and apply to the nvidia gl driver ("/usr/lib/libGL.so.304.64") and did all other steps and the error is the same...

Maybe i'm not doing all correct, let's wait for other users to test...

Hmm. I'm kind of surprised *nothing* changed. If anything, I'd expect it to fail more glamorously when trying to run non-existent functions.

Just as a sanity check what does `objdump -T /usr/lib/libGL.so.304.64 | grep gl` show? I'd expect to see quite a few gl* functions defined in the .text section, with a few of the ones I had you add show up as *UND*.
@RunningRiot

Well it show a lot of functions and i found this:

000c9380 g DF .writetext 00000000 Base glColorMaskIndexedEXT

i don't know if matters or not... You can check for yourself, i do a paste in pastebin because it's more than 2000 lines. here's the link:

http://pastebin.com/Sr57Smyw
I also tried the hack you described, and I applied it to my /usr/lib32/libGL.so (I'm on 64 bit, and Steam only supports x86), and it didn't work for me. I also ran the same sanity check, and it shows this bit

000c9380 g DF .writetext 00000000 Base glColorMaskIndexedEXT

Although when I first tried to play, it did nothing, the second time it said it was running, and the third it failed. I'll try again and see.
There is to this file: libnvidia-glcore.so.304.64

I do an "objdump -T /usr/lib/libnvidia-glcore.so.304.64 | grep gl" and i get this:

/usr/lib/libnvidia-glcore.so.304.64: file format elf32-i386

011d7700 g DF .text 0000014e Base _nv013glcore
0166f340 g DF .text 000000a6 Base _nv014glcore
01626a40 g DF .text 00000294 Base _nv018glcore
01d04b40 g DO .bss 0000022c Base _nv015glcore
012377c0 g DF .text 00000001 Base _nv005glcore
01237740 g DF .text 00000001 Base _nv003glcore
01d04d6c g DO .bss 00000018 Base _nv019glcore
011b4cc0 g DF .text 0000000a Base _nv002glcore
01237540 g DF .text 00000001 Base _nv007glcore
01237780 g DF .text 00000001 Base _nv004glcore
01237580 g DF .text 00000001 Base _nv008glcore
011b4c40 g DF .text 00000009 Base _nv001glcore
01cf6960 g DO .bss 00000004 Base _nv023glcore
01cc2460 g DO .data 00001340 Base _nv020glcore
012375c0 g DF .text 00000001 Base _nv009glcore
01cf7528 g DO .bss 00000004 Base _nv021glcore
01237500 g DF .text 00000001 Base _nv010glcore
011b4d00 g DF .text 0000000a Base _nv012glcore
01cf4040 g DO .bss 000008f0 Base _nv017glcore
011b4c80 g DF .text 0000000a Base _nv000glcore

I don't know if help for something...
Shoot! I just restarted my computer, and that hack made X (and Minecraft before I restarted) fail to start! I just reinstalled, but it may present a problem to other users that aren't as Linuxey (new word) as Arch/Debian/Gentoo users.
Ok, well, I probably should have asked for the objdump before suggesting the elf-hacking. It turns out there IS a symbol glColorMaskIndexedEXT in libGL.so.1... so the error message TF2 is showing doesn't make sense at all. Restore any backups you made; sorry for the wild goose chase.
Editat ultima dată de mabrowning; 10 dec. 2012 la 17:20
No Problem. It doesn't hurt to try a few possible solutions. :)
Editat ultima dată de Ring Ring; 10 dec. 2012 la 20:42
me too:
  • 02:00.0 VGA compatible controller: NVIDIA Corporation G71 [GeForce 7900 GTX] (rev a1)
  • Linux 3.5.0-20-generic #31-Ubuntu SMP x86_64
  • OpenGL vendor string: NVIDIA Corporation
  • OpenGL renderer string: GeForce 7900 GTX/PCIe/SSE2
  • OpenGL version string: 2.1.2 NVIDIA 304.48
Got same error:
01:00.0 VGA compatible controller: NVIDIA Corporation G71 [GeForce 7900 GS] (rev a1) (prog-if 00 [VGA controller])
Flags: bus master, fast devsel, latency 0, IRQ 18
Memory at fd000000 (32-bit, non-prefetchable) [size=16M]
Memory at d0000000 (64-bit, prefetchable) [size=256M]
Memory at fc000000 (64-bit, non-prefetchable) [size=16M]
I/O ports at cc00 [size=128]
[virtual] Expansion ROM at fe9e0000 [disabled] [size=128K]
Capabilities: <access denied>
Kernel driver in use: nvidia
Kernel modules: nvidia_experimental_304, nouveau, nvidiafb

server glx vendor string: NVIDIA Corporation
server glx version string: 1.4

Driver Version: 2.1.2 NVIDIA 304.48

I think this could be a very old part of OpenGL: http://www.opengl.org/registry/specs/EXT/draw_buffers2.txt
Piss Spy 12 dec. 2012 la 12:31 
Postat inițial de Santa Claus:
Got same error:
01:00.0 VGA compatible controller: NVIDIA Corporation G71 [GeForce 7900 GS] (rev a1) (prog-if 00 [VGA controller])
Flags: bus master, fast devsel, latency 0, IRQ 18
Memory at fd000000 (32-bit, non-prefetchable) [size=16M]
Memory at d0000000 (64-bit, prefetchable) [size=256M]
Memory at fc000000 (64-bit, non-prefetchable) [size=16M]
I/O ports at cc00 [size=128]
[virtual] Expansion ROM at fe9e0000 [disabled] [size=128K]
Capabilities: <access denied>
Kernel driver in use: nvidia
Kernel modules: nvidia_experimental_304, nouveau, nvidiafb

server glx vendor string: NVIDIA Corporation
server glx version string: 1.4

Driver Version: 2.1.2 NVIDIA 304.48

I think this could be a very old part of OpenGL: http://www.opengl.org/registry/specs/EXT/draw_buffers2.txt

Well, unsurprisingly all of the cards missing the extension are older than when that extension was added.
Not Root 13 dec. 2012 la 16:45 
Postat inițial de Letalis Sonus:
Postat inițial de paulguy119:
-dxlevel is directx shader level. This game uses opengl in linux.
Nope, it's using a Direct3D->OpenGL translation layer, the game itself still uses Direct3D - and that's exactly the reason why it is so picky about the required OpenGL extensions.

No, the reason we're having this problem is because they're using a real OpenGL renderer that's (at least currently) hardcoded against certain extensions that aren't supported by pre-8xxx GeForce cards. That's why the Windows version, with its much more flexible D3D renderer running through Wine's D3D to OGL translation layer, works on graphics cards the native Linux version does not.

Killing Floor works on my laptop, but TF2 errors out with the glColorMaskIndexedEXT error. GeForce 6150M.
Editat ultima dată de Not Root; 13 dec. 2012 la 16:45
< >
Se afișează 46-60 din 127 comentarii
Per pagină: 1530 50

Data postării: 19 nov. 2012 la 23:50
Postări: 127