You are not logged in.

#1 2015-04-23 20:00:42

crazySocket
Member
Registered: 2015-04-23
Posts: 19

[SOLVED] nvidia, missing openGL extensions

I am trying to get steam to work properly. Some games run but their performance sucks. Others complain about missing extensions and never start. I have gtx 770 and nvidia driver installed so this should not be the case.

What I have installed

$ pacman -Qs nvidia
local/libcl 1.1-4
    OpenCL library and ICD loader from NVIDIA
local/libvdpau 1.1-1
    Nvidia VDPAU library
local/nvidia 346.59-1
    NVIDIA drivers for linux
local/nvidia-utils 346.59-1
    NVIDIA drivers utilities
$ pacman -Qs mesa
local/glu 9.0.0-3
    Mesa OpenGL Utility library
local/lib32-libtxc_dxtn 1.0.1-5
    S3 Texture Compression (S3TC) library for Mesa (32-bit)
local/lib32-mesa 10.5.3-1
    an open-source implementation of the OpenGL specification (32-bit)
local/lib32-mesa-libgl 10.5.3-1
    Mesa 3-D graphics library (32-bit)
local/libtxc_dxtn 1.0.1-6
    S3 Texture Compression (S3TC) library for Mesa
local/mesa 10.5.3-1
    an open-source implementation of the OpenGL specification
local/mesa-demos 8.2.0-4
    Mesa demos and tools
local/mesa-libgl 10.5.3-1
    Mesa 3-D graphics library

All new processors have integrated graphics so I checked which one is used.

$ lspci
00:00.0 Host bridge: Intel Corporation Xeon E3-1200 v2/3rd Gen Core processor DRAM Controller (rev 09)
00:01.0 PCI bridge: Intel Corporation Xeon E3-1200 v2/3rd Gen Core processor PCI Express Root Port (rev 09)
00:14.0 USB controller: Intel Corporation 7 Series/C210 Series Chipset Family USB xHCI Host Controller (rev 04)
00:16.0 Communication controller: Intel Corporation 7 Series/C210 Series Chipset Family MEI Controller #1 (rev 04)
00:1a.0 USB controller: Intel Corporation 7 Series/C210 Series Chipset Family USB Enhanced Host Controller #2 (rev 04)
00:1b.0 Audio device: Intel Corporation 7 Series/C210 Series Chipset Family High Definition Audio Controller (rev 04)
00:1c.0 PCI bridge: Intel Corporation 7 Series/C210 Series Chipset Family PCI Express Root Port 1 (rev c4)
00:1c.4 PCI bridge: Intel Corporation 7 Series/C210 Series Chipset Family PCI Express Root Port 5 (rev c4)
00:1c.5 PCI bridge: Intel Corporation 82801 PCI Bridge (rev c4)
00:1d.0 USB controller: Intel Corporation 7 Series/C210 Series Chipset Family USB Enhanced Host Controller #1 (rev 04)
00:1f.0 ISA bridge: Intel Corporation Z77 Express Chipset LPC Controller (rev 04)
00:1f.2 SATA controller: Intel Corporation 7 Series/C210 Series Chipset Family 6-port SATA Controller [AHCI mode] (rev 04)
00:1f.3 SMBus: Intel Corporation 7 Series/C210 Series Chipset Family SMBus Controller (rev 04)
01:00.0 VGA compatible controller: NVIDIA Corporation GK104 [GeForce GTX 770] (rev a1)
01:00.1 Audio device: NVIDIA Corporation GK104 HDMI Audio Controller (rev a1)
03:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller (rev 06)
04:00.0 PCI bridge: ASMedia Technology Inc. ASM1083/1085 PCIe to PCI Bridge (rev 03)

nvidia driver was properly loaded in X and I can see in `lspci -k`

01:00.0 VGA compatible controller: NVIDIA Corporation GK104 [GeForce GTX 770] (rev a1)
        Subsystem: ASUSTeK Computer Inc. Device 8465
        Kernel driver in use: nvidia
        Kernel modules: nouveau, nvidia

I have installed unigine-heaven to get some reliable information about my card's performance. Unfortunately, when I start the benchmark I get

$ unigine-heaven 
Loading "/opt/unigine-heaven/bin/../data/heaven_4.0.cfg"...
Loading "libGPUMonitor_x64.so"...
Loading "libGL.so.1"...
Loading "libopenal.so.1"...
Set 1920x1080 fullscreen video mode
Set 1.00 gamma value
Unigine engine http://unigine.com/
Binary: Linux 64bit GCC 4.4.5 Release Feb 13 2013 r11274
Features: OpenGL OpenAL XPad360 Joystick Flash Editor
App path:  /opt/unigine-heaven/bin/
Data path: /opt/unigine-heaven/data/
Save path: /home/lorddidger/.Heaven/

---- System ----
System: Linux 3.19.3-3-ARCH x86_64
CPU: Intel(R) Core(TM) i7-3770 CPU @ 3.40GHz 3410MHz MMX SSE SSE2 SSE3 SSSE3 SSE41 SSE42 AVX HTT x8
GPU: GeForce GTX 770 PCI Express 346.59 x1
System memory: 3904 MB
Video memory:  2048 MB
Sync threads:  7
Async threads: 8

---- MathLib ----
Set SSE2 simd processor

---- Sound ----
Renderer: OpenAL Soft
OpenAL vendor:   OpenAL Community
OpenAL renderer: OpenAL Soft
OpenAL version:  1.1 ALSOFT 1.16.0
Found AL_EXT_LINEAR_DISTANCE
Found AL_EXT_OFFSET
Found ALC_EXT_EFX
Found EFX Filter
Found EFX Reverb
Found EAX Reverb
Found QUAD16 format
Found 51CHN16 format
Found 61CHN16 format
Found 71CHN16 format
Maximum sources:         256
Maximum effect slots:    4
Maximum auxiliary sends: 2

---- Render ----
Renderer: NVIDIA NV70 (Kepler) 2048MB
OpenGL vendor:   VMware, Inc.
OpenGL renderer: Gallium 0.4 on llvmpipe (LLVM 3.6, 256 bits)
OpenGL version:  3.0 Mesa 10.5.3
Found required GL_ARB_map_buffer_range
Found required GL_ARB_vertex_array_object
Found required GL_ARB_draw_instanced
Found required GL_ARB_draw_elements_base_vertex
Found required GL_ARB_transform_feedback
Found required GL_ARB_half_float_vertex
Found required GL_ARB_half_float_pixel
Found required GL_ARB_framebuffer_object
Found required GL_ARB_texture_multisample
Found required GL_ARB_uniform_buffer_object

Unigine fatal error
GLRender::require_extension(): required extension GL_ARB_geometry_shader4 is not supported
Shutdown

I do not know what else should I investigate. I tried lib32-nvidia-libgl instead of mesa's but steam did not even start then.

Any hint would be greatly appreciated.

Last edited by crazySocket (2015-04-25 12:10:13)

Offline

#2 2015-04-23 23:11:19

a-jamesregan
Member
Registered: 2015-04-13
Posts: 6

Re: [SOLVED] nvidia, missing openGL extensions

I'm having similar issues with my nvidia drivers, but in my case steam won't even start, probably due to another issue, but I will be interested to see how you get steam working.  Did you happen to have any issues like this starting steam?

Running Steam on arch  64-bit
STEAM_RUNTIME is enabled automatically
Installing breakpad exception handler for appid(steam)/version(0_client)
libGL error: unable to load driver: nouveau_dri.so
libGL error: driver pointer missing
libGL error: failed to load driver: nouveau
libGL error: unable to load driver: nouveau_dri.so
libGL error: driver pointer missing
libGL error: failed to load driver: nouveau
libGL error: unable to load driver: swrast_dri.so
libGL error: failed to load driver: swrast

Offline

#3 2015-04-24 07:23:38

crazySocket
Member
Registered: 2015-04-23
Posts: 19

Re: [SOLVED] nvidia, missing openGL extensions

I believe I saw in steam logs

libGL error: unable to load driver: swrast_dri.so
libGL error: failed to load driver: swrast

but I can see it no longer. It must be that I have this library installed.

$ find / -mount -name '*swrast*'
/usr/lib/xorg/modules/dri/kms_swrast_dri.so
/usr/lib/xorg/modules/dri/swrast_dri.so
/usr/lib32/xorg/modules/dri/kms_swrast_dri.so
/usr/lib32/xorg/modules/dri/swrast_dri.so

You can get it too by installing proper packages

$ pacman -Qo /usr/lib/xorg/modules/dri/swrast_dri.so 
/usr/lib/xorg/modules/dri/swrast_dri.so belongs to mesa 10.5.3-1
$ pacman -Qo /usr/lib32/xorg/modules/dri/swrast_dri.so 
/usr/lib32/xorg/modules/dri/swrast_dri.so belongs to lib32-mesa 10.5.3-1

I do not know why your steam tries to load nouveau. Perhaps you have not installed the packages I mentioned in my previous post. nvidia blacklists nouveau. Make sure you have exactly the same state I have described and u will get steam, at least, starting up.

Offline

#4 2015-04-24 07:53:19

V1del
Forum Moderator
Registered: 2012-10-16
Posts: 21,416

Re: [SOLVED] nvidia, missing openGL extensions

@crazySet

You want to use the binary nvidia drivers so you'll have to use nvidia-libgl and lib32-nvidia-libgl respectively otherwise you wont have good 3D acceleration. I'm surprised it even starts to load anything using gallium while having nvidia loaded.

Online

#5 2015-04-24 21:43:00

crazySocket
Member
Registered: 2015-04-23
Posts: 19

Re: [SOLVED] nvidia, missing openGL extensions

It is working now. That was correct clue to install nvidia-libgl instead of mesa's.

First I switched from lib32-mesa-libgl to lib32-nvidia-libgl. I knew I cannot start steam so I tried to restart X. When I failed I investigated X log. I saw that libGL.so could not be loaded. Was looking at this library for a while when I noticed that my driver is 346.59 but libGL library 349.16. I don't know how that happened. Was fiddling next while to change the symlink from one version to another (there was a symlink to non existent version of libGL) when I decided to get rid of nvidia at all.

After switching to mesa completely I installed nvidia. Steam started but games and unigine-heaven complained about missing extensions. Then I installed lib32-nvidia-libgl and nvidia-libgl since I realized I have never installed the last one. Both replaced mesa's packages. Finally, all works properly.

Offline

#6 2015-04-25 12:06:09

V1del
Forum Moderator
Registered: 2012-10-16
Posts: 21,416

Re: [SOLVED] nvidia, missing openGL extensions

You probably installed something with pacman -Sy which you mustn't do, that way stuff like this can happen . However now that it's solved don't forget to prepend solved to your title

Online

#7 2015-08-19 14:38:32

Runaway1956
Member
Registered: 2009-03-13
Posts: 9

Re: [SOLVED] nvidia, missing openGL extensions

V1del wrote:

@crazySet

You want to use the binary nvidia drivers so you'll have to use nvidia-libgl and lib32-nvidia-libgl respectively otherwise you wont have good 3D acceleration. I'm surprised it even starts to load anything using gallium while having nvidia loaded.



Thank you, Sir - your post was exactly what I needed, as well.


$ inxi -G
Graphics:  Card-1: Advanced Micro Devices [AMD/ATI] ES1000
           Card-2: NVIDIA GK208 [GeForce GT 630 Rev. 2]
           Display Server: X.Org 1.17.2 driver: nvidia
           Resolution: 1024x768@60.00hz, 1280x1024@60.02hz
           GLX Renderer: GeForce GT 630/PCIe/SSE2
           GLX Version: 4.5.0 NVIDIA 352.30


[img]https://www.linuxcounter.net/cert/522398.png[/img]

Offline

Board footer

Powered by FluxBB