nvidia-driver SBo The symbolic link '/usr/lib/libGL.so.1' does not point to 'tmp/SBo/package-nvidia-driver/usr/lib64/libGL.so.1'
Hi
I upgraded my kernel to 4.4.75 and proceeded to upgrade my NVIDIA driver from 375.39 -> 375.66
Code:
/usr/include/features.h:148:3: warning: #warning "_BSD_SOURCE and _SVID_SOURCE are deprecated, use _DEFAULT_SOURCE" [-Wcpp] I have tried deleting the symlink and making a new one to /tmp/SBo/package-nvidia-driver/usr/lib64/libGL.so.1 as suggested by the error message but when I run the build and it fails, it seems the old symlink to libGL.so.1.2.0 gets put back again. Anyone know how I can fix this? I reinstalled mesa and xorg-server but I'm stuck using a 1024x768 resolution. I do have backup packages of 375.39 I had built before but when I install them I get an error about missing libGL files. This is what I have in /usr/lib/ Code:
root@slack:~/nvidia-driver # ls -l /usr/lib/libGL* |
I noticed the last part of the error message states
Code:
mv: cannot stat 'libGLESv1_CM.so.1': No such file or directory I went through the nvidia-driver.SlackBuild. It looks like it's these lines: Code:
283 # rename conficting files as needed; remove conflicting symlinks created by installer Those files (libGLESv1_CM.so.1 / libGLESv2.so.2) are not in the package build directory. Code:
root@slack:~/nvidia-driver # ls -l /tmp/SBo/package-nvidia-driver/usr/lib/ I commented them out and the package built. The package also installed but when I startx my desktop effects are gone and so are all Window borders. |
This may be a problem with the SlackBuild. I edited the lines I previously commented out
Code:
--- nvidia-driver.SlackBuild.orig 2017-07-12 10:53:12.000000000 -0500 Here are the libraries created by 375.39: https://pastebin.com/Gp2F9Mwf Here are the libraries created by 375.66 (GLVND="no" COMPAT32="yes"): https://pastebin.com/YQbtt2fL Here are the libraries created by 375.66 (GLVND and COMOPAT32 not set): https://pastebin.com/qWjiZ7yU I ended up reverting to 375.39. I'm unable to verify if this was only on my system or if the problem really is with the SlackBuild. Anyone else run into this problem? |
Try reinstalling the Mesa package after removing any stray leftover symlinks from nvidia-driver. If needed remove the original Mesa package too.
|
I mentioned I reinstalled mesa and xorg-server in my original post but I should have been more clear and said I did this after removing all symlinks from nvidia-driver. I'm on a working 375.39 driver now so I may go back and tackle this problem when I have a free weekend.
|
The issue is the 'GLVND="no"' switch. nvidia wants by default to use GLVND and those are the libraries you should use unless there is a really old program that can't use GLVND. I'm having a bit of trouble getting the non-GLVND stuff to work correctly with the way nvidia installs the libraries. The issue, and this is what I did with the previous driver, was hand install each and every library since we need a hybrid non-GLVND install that includes GLVND bits, such as libEGL and libGLES. In the next iteration, 'GLVND="no"' will be removed. If I go pure non-GLVND, I will get a lot of complaints about Steam, Vulkan.
I'll take a look at your patches and library lists, but you did it wrong. If you rename libGLESv?-nvidia* to libGLESv?-nvidia*.so-nvidia you will screw up the install. '-nvidia' is a flag so that nvidia-switch knows which nvida files are the same name as the Mesa versions. Recommendation: use GLVND. It works. Also, 'nvidia-switch' now has a function to restore Mesa and xorg-server packages (experimental, works here, YMMV). Running 'nvidia-switch --remove" twice is NOT recommended is HIGHLY discouraged. Either way, after you remove nvidia-driver and delete broken symlinks, you will need 'upgradepkg --reinstall mesa mesa-compat32 xorg-server' |
All times are GMT -5. The time now is 06:01 AM. |