Closed ghost closed 8 years ago
The driver update has apparently messed up your OpenGL installation, you'll need to fix that before Reborn will run.
No it hasn't (but I can see why it looks like that)! Uncomment line 41 in dota.sh #export __GL_THREADED_OPTIMIZATIONS=1
and bam it runs. Thanks to /u/404AnonymousNotFound for pointing it out.
__GL_THREADED_OPTIMIZATIONS is checked by the driver, not Reborn. It's odd that it makes the OpenGL exports change but that's up to the driver, there still isn't something Reborn can change about this.
They (arch linux) updated the package so that it makes use of
https://github.com/NVIDIA/libglvnd
line 41 in dota.sh for me is already uncommented but when I comment it, works
portal 2 (same result with team fortress 2 except I had to uncomment it) runs fine for me, but doesn't when "export __GL_THREADED_OPTIMIZATIONS=1" is set and errors when run
Game update: AppID 620 "Portal 2", ProcID 8092, IP 0.0.0.0:0 ERROR: ld.so: object '/home/user/.local/share/Steam/ubuntu12_32/gameoverlayrenderer.so' from LD_PRELOAD cannot be preloaded (wrong ELF class: ELFCLASS32): ignored. ERROR: ld.so: object '/home/user/.local/share/Steam/ubuntu12_32/gameoverlayrenderer.so' from LD_PRELOAD cannot be preloaded (wrong ELF class: ELFCLASS32): ignored. pid 8094 != 8093, skipping destruction (fork without exec?) ERROR: ld.so: object '/home/user/.local/share/Steam/ubuntu12_32/gameoverlayrenderer.so' from LD_PRELOAD cannot be preloaded (wrong ELF class: ELFCLASS32): ignored. ERROR: ld.so: object '/home/user/.local/share/Steam/ubuntu12_64/gameoverlayrenderer.so' from LD_PRELOAD cannot be preloaded (wrong ELF class: ELFCLASS64): ignored. SDL video target is 'x11'
SDL failed to create GL compatibility profile (whichProfile=0!
PROBLEM: You appear to have OpenGL 0.0.0, but we need at least 2.0.0! Could not find required OpenGL entry point 'glGetError'! Either your video card is unsupported, or your OpenGL driver needs to be updated.
Game removed: AppID 620 "Portal 2", ProcID 8092
I think this is a bug with nvidia, not reborn or arch linux because as gdrewb-valve stated... this is checked by the driver
based on what is discussed here
it sounds like you need to update your code to take into consideration for people who are using libglvnd
I've tried another application (unigine-valley) that makes use opengl with or without that environment variable set and works fine
when using the command "glxinfo" with the environment variable set... it seg faults.. but with it unset, it shows the full output so now I'm thinking you do need to update (so does glxinfo) your code
something is changing but your code doesn't know about (unigine-valley does for some reason) and boom... that's when it fail... but yes it's strange for the driver to change symbol info based on that...
I'm still thinking this is an issue with nvidia but just requires you to update your code ( not workarounds ) to work with libglvnd
nvidia guy on arch forum for this bug. looks like app needs to be updated.
As a workaround for these games, threaded optimizations can be disabled in their .sh launcher: export __GL_THREADED_OPTIMIZATIONS=0
Alternatively, the environment variable GLVND_DISALLOW_PATCHING will work too (and also appears to fix issues in a few other games that don't work with libglvnd yet). GLVND_DISALLOW_PATCHING=1
A. Huillet NVIDIA Linux graphics
see also
Multiple GLX client libraries in the NVIDIA Linux driver installer package
im no expert but it doesn't seem this is to be fixed at driver or os, it can be but long term its not a good idea. again, not an expert, but just what it looks like.
I think what we need is confirmation from NVIDIA if GL_THREADED_OPTIMIZATIONS will work with both non-glvnd and glvnd GLX libraries in the future. I used the 361.16 and 361.18 drivers which also had glvnd enabled by default and it didn't cause any issues with games that rely on GL_THREADED_OPTIMIZATIONS. It only affected Civ V and KOTOR2, because these apps used OpenGL in a wrong way which was tolerated in earlier driver versions, but not anymore.
I have reached out to NVIDIA on this issue. I will post more info once I get a response. Thanks for all the reports.
We have heard back from NVIDIA. They have confirmed this is a driver bug impacting the libglvnd-enabled driver (nobody but Archlinux at the moment). The driver bug will be fixed in a future release. For now, they recommend setting GLVND_DISALLOW_PATCHING=1 as a workaround, although also setting GL_THREADED_OPTIMIZATIONS=0 will work (although potentially more perf impact).
cheers dan. nice to have an official work around until its fixed.
Gentoo here, nvidia driver v361.28. __GL_THREADED_OPTIMIZATIONS=0 works so yup, nvidia's bug.
Can confirm this on Ubuntu 16.04 with drivers from https://launchpad.net/~graphics-drivers/+archive/ubuntu/ppa (libGL seems to have glvnd symbols) it also fails as described by the OP. Commenting out export GL_THREADED_OPTIMIZATIONS=1 or adding GLVND_DISALLOW_PATCHING=1 as @danginsburg suggested indeed fixes the issue.
The Arch wiki suggests running the game with the launch option
__GLVND_DISALLOW_PATCHING=1 %command%
, which worked for me and seems like a more elegant solution.
many many thanks guys. added __GLVND_DISALLOW_PATCHING=1 %command% to launch options and can play just fine.
@Bednar87 @LeoVerto The workaround works on my Arch box too. But I have impression that now affected games take a bit longer to start. Specifically CS:GO. But in-game performance seems to be unaffected.
This fix also worked for me on 64 bit Arch. Thanks so much :+1:
ubuntu 16.04 with the 361.28 __GLVND_DISALLOW_PATCHING=1 %command%
does fix it for now
glad to read it. Thanks for fix.
where can i find the dota.sh and use the __GLVND_DISALLOW_PATCHING=1 %command% ? Ubuntu 15.10 and 361.28 here
@marcobr92 hey, its in the same place regardless of distro really.
really?
__GLVND_DISALLOW_PATCHING=1 %command%
in the box.Thank you that works.
I just installed a kernel update to version 4.5.0 and all of a sudden none of the suggested workarounds appear to work anymore. Can you confirm this? I'm not able to launch Dota2 anymore despite having set the suggested launch options. Also using Arch Linux.
Check your driver instalation again. I'm using latest kernel, i update every sunday, and so far so good. Ofc. Using proper launch options On Mar 19, 2016 6:13 PM, "Janek Bevendorff" notifications@github.com wrote:
I just installed a kernel update to version 4.5.0 and all of a sudden none of the suggested workarounds appear to work anymore. Can you confirm this? I'm not able to launch Dota2 anymore despite having set the suggested launch options.
— You are receiving this because you are subscribed to this thread. Reply to this email directly or view it on GitHub https://github.com/ValveSoftware/Dota-2/issues/756#issuecomment-198786420
Driver installation was okay (361.28). Reverted back to 358.16 with kernel 4.3.3 for the time being. Other games also seem to have issues with the new nvidia drivers so I archived a working driver/kernel set a while ago.
Just installed the newly released Nvidia-364, now I can start dota2 without the workaround. Don't know it's Nvidia or Valve that solves the problem though.
@hrzhu the issue was with libglvnd bundled with nvidia 361.28, that hasn't changed...
yes its fixed probably in the new beta driver so called 364 but...still it is beta and it does not exists for my Sabayon or Gentoo package base and if I trying to mix entropy packages with portage I get more problems then benefits. Thats it I just prefer to stay with Sabayon 16.04 weekly repo branch and stay out of trying to update nvidia-drivers from portage gentoo or via nvidia sh package. Cause these in most cases causes inconsistency and problems in any Linux distribution when your distro is upgraded you basicly can get no X and no desktop experience, I was not suppose to go through this again cause I am already restoring my entropy client.conf back to the normal state as I have to fix some sort of things which I edit in there to do mixing entropy and gentoo portage stuff for my Sabayon distro as it's described on their sabayon.wiki pages but it goes into crashes and problems only through one minor upgrade procedure. So I reverted back to the normal entropy stuff and never thinking of again to use any ppa, or third party repo or sh installers stuff on any Linux distribution cause it makes a lot of pain in the ass to recover whole things after you trying to do not like current distro designed to be. Anyway these new libglvnd should be more tested against for any particullary taken distribution. And Wayland session is simply not ready for daily usage, it is great that they do first beta of these driver which implements such features set like wayland and vulkan and fix few more bugs but I still have to wait their next LTS branch and when these new LTS driver dropped out to shipped in my Sabayon entropy repository. Cheers. At least we know that these mess was fixed in beta and since I am not currently use new libglvnd model I just wait for when it comes to entropy ;D
23.03.2016, 05:15, "Hairong Zhu" notifications@github.com:
Just installed the newly released Nvidia-364, now I can start dota2 without the workaround. Don't know it's Nvidia or Valve that solves the problem though.
— You are receiving this because you commented. Reply to this email directly or view it on GitHub
I just ran into this today after not launching Dota for a long time. Freshly upgraded Arch Linux, still with nvidia driver 361.28-4.
As stated above, launch option "__GLVND_DISALLOW_PATCHING=1 %command%" solved it.
I assume Arch will update to the new nvidia soon.
Is there a Dota issue here? It sounds like it's an NVIDIA issue that they've addressed?
@gdrewb-valve no Dota 2 issue here, it is explicitly limited to nvidia 361.28, any distro that uses it.
^ Arch Linux has 364.19, which works with no intervention.
This issue should be closed, because it was fixed upstream.
Thanks, closing.
Hi there,
Since the latest driver update (NVIDIA) to 361.28, I can no longer launch Dota on Arch.