A Gaming Laptop working well under a GNU/Linux distribution is not a
dream anymore. Though some unwanted drivers like the intel management
engine that go undetected is a blessing in disguise, most devices
already have a driver in the Linux Kernel. Some of them have to be
instructed to be loaded while others are proprietary needing some
manually intervention and configuration in some rare cases.
I currently posses a MSI GP60 2 PE Leopard Gaming Laptop onto which Slackware was flawlessly installed under UEFI but not secureboot all but msi_laptop and msi_wmi had to manually feeded into modprobe configuration files for proper booting and so that wifi and the keyboard keys are recognized. The only caveat being the Gaming Laptop have two GPUs one integrated Intel Haswell Mobile graphics processors, the second a discrete Nvidia GeForce 840M graphics processors both forming a duo into the Optimus Technology.
This technology is not in the official repositories but I nonetheless used the script crazybee.sh to install the slack packages built by the script itself. It utilizes the latest nvidia proprietary drivers packages under the bumblebee file system structure so that it does not corrupt the xorg DRI drivers. This ensures proper package upgrades. The advantage of utilizing the Optimus Technology using Bumblebee is that the Power Hungry Nvidia GPU is shut down to maximise battery usage.
Unfortunately, I had the crazy idea to directly install the nvidia proprietary driver version 352.41 for testing cuda instead of bumblebee. After removing the driver when all tests were done, OpenGL was refusing to utilised. mplayer was giving the following error
The library dependencies of mplayer were
Removing the specific library files would not solve the problem as
the OS was not compiled to utilised a specific version. Some other file
was forcing the programs to use this 352.41 driver library files.
Re-installation of all packages did not solve the problem. I also tried to cut down packages so that I have a minimal installation but this did not solve it either.
Using the -u option of ldd gave me the information I needed which in effect printed unused direct dependencies.
Using find to locate all nvidia unprocessed library drivers.
I then removed the unwanted files and restore the system to a proper state.
This is the state after cleanup.
Since the system was in a minimal state, the remaining packages
were reinstalled. If slackpkg have all packages in cache this would do
the job.
Else use the fastest way of installation of packages. Take care that mesa is reinstalled so that it recreate the proper links.
PS: I have been able to understand why removepkg did not remove the necessary file since the files are registered as
instead of
Code:
Nvidia 352-41 playing bad with GNU/linux Slackware
I currently posses a MSI GP60 2 PE Leopard Gaming Laptop onto which Slackware was flawlessly installed under UEFI but not secureboot all but msi_laptop and msi_wmi had to manually feeded into modprobe configuration files for proper booting and so that wifi and the keyboard keys are recognized. The only caveat being the Gaming Laptop have two GPUs one integrated Intel Haswell Mobile graphics processors, the second a discrete Nvidia GeForce 840M graphics processors both forming a duo into the Optimus Technology.
This technology is not in the official repositories but I nonetheless used the script crazybee.sh to install the slack packages built by the script itself. It utilizes the latest nvidia proprietary drivers packages under the bumblebee file system structure so that it does not corrupt the xorg DRI drivers. This ensures proper package upgrades. The advantage of utilizing the Optimus Technology using Bumblebee is that the Power Hungry Nvidia GPU is shut down to maximise battery usage.
Unfortunately, I had the crazy idea to directly install the nvidia proprietary driver version 352.41 for testing cuda instead of bumblebee. After removing the driver when all tests were done, OpenGL was refusing to utilised. mplayer was giving the following error
Code:
mplayer mplayer: error while loading shared libraries: libnvidia-glsi.so.352.41: cannot open shared object file: No such file or directory
Code:
ldd -d /usr/bin/mplayer linux-vdso.so.1 (0x00007fff6a6a8000) libm.so.6 => /lib64/libm.so.6 (0x00007fe82a9d0000) libncurses.so.5 => /lib64/libncurses.so.5 (0x00007fe82a77a000) libpng14.so.14 => /usr/lib64/libpng14.so.14 (0x00007fe821945000) libXrender.so.1 => /usr/lib64/libXrender.so.1 (0x00007fe82173c000) libnvidia-tls.so.352.41 => not found libnvidia-glcore.so.352.41 => not found libnvidia-glsi.so.352.41 => not found libaudiofile.so.1 => not found libXi.so.6 => /usr/lib64/libXi.so.6 (0x00007fe82152b000) libXcursor.so.1 => /usr/lib64/libXcursor.so.1 (0x00007fe821321000) libharfbuzz.so.0 => /usr/lib64/libharfbuzz.so.0 (0x00007fe82108f000) libicule.so.51 => /usr/lib64/libicule.so.51 (0x00007fe820e39000) libicuuc.so.51 => /usr/lib64/libicuuc.so.51 (0x00007fe820ac
Re-installation of all packages did not solve the problem. I also tried to cut down packages so that I have a minimal installation but this did not solve it either.
Using the -u option of ldd gave me the information I needed which in effect printed unused direct dependencies.
Using find to locate all nvidia unprocessed library drivers.
Code:
root@nikita:/var/log/packages# find /usr/ -iname "*352*" /usr/lib64/libEGL.so.352.41 /usr/lib64/xorg/modules/extensions/libglx.so.352.41 root@nikita:/var/log/packages# ls -lh /usr/lib64/libEGL* -rwxr-xr-x 1 root root 1.2K Oct 22 2013 /usr/lib64/libEGL.la* lrwxrwxrwx 1 root root 15 Nov 11 16:25 /usr/lib64/libEGL.so -> libEGL.so.1.0.0* lrwxrwxrwx 1 root root 16 Nov 11 16:25 /usr/lib64/libEGL.so.1 -> libEGL.so.352.41* -rwxr-xr-x 1 root root 115K Oct 22 2013 /usr/lib64/libEGL.so.1.0.0* -rwxr-xr-x 1 root root 115K Oct 22 2013 /usr/lib64/libEGL.so.1.0.0-xorg* -rwxr-xr-x 1 root root 914K Nov 9 19:28 /usr/lib64/libEGL.so.352.41* root@nikita:/var/log/packages# ls -lh /usr/lib64/libGL* -rwxr-xr-x 1 root root 1.3K Oct 22 2013 /usr/lib64/libGL.la* -rwxr-xr-x 1 root root 1.3K Oct 22 2013 /usr/lib64/libGL.la-xorg* lrwxrwxrwx 1 root root 14 Nov 11 16:25 /usr/lib64/libGL.so -> libGL.so.1.2.0* lrwxrwxrwx 1 root root 15 Nov 11 16:25 /usr/lib64/libGL.so.1 -> libGL.so.352.41* -rwxr-xr-x 1 root root 500K Oct 22 2013 /usr/lib64/libGL.so.1.2.0* -rwxr-xr-x 1 root root 500K Oct 22 2013 /usr/lib64/libGL.so.1.2.0-xorg* -rwxr-xr-x 1 root root 1.2M Nov 9 19:28 /usr/lib64/libGL.so.352.41* -rw-r--r-- 1 root root 1.1M Mar 17 2013 /usr/lib64/libGLEW.a lrwxrwxrwx 1 root root 16 Nov 11 16:24 /usr/lib64/libGLEW.so -> libGLEW.so.1.9.0 lrwxrwxrwx 1 root root 16 Nov 11 16:24 /usr/lib64/libGLEW.so.1.9 -> libGLEW.so.1.9.0 -rw-r--r-- 1 root root 516K Mar 17 2013 /usr/lib64/libGLEW.so.1.9.0 -rwxr-xr-x 1 root root 1.3K Feb 21 2013 /usr/lib64/libGLU.la* lrwxrwxrwx 1 root root 15 Nov 11 16:24 /usr/lib64/libGLU.so -> libGLU.so.1.3.1* lrwxrwxrwx 1 root root 15 Nov 11 16:24 /usr/lib64/libGLU.so.1 -> libGLU.so.1.3.1* -rwxr-xr-x 1 root root 505K Feb 21 2013 /usr/lib64/libGLU.so.1.3.1* root@nikita:/var/log/packages# ls -lh /usr/lib64/xorg/modules/extensions total 840K -rwxr-xr-x 1 root root 932 Dec 21 2014 libglx.la* -rwxr-xr-x 1 root root 932 Dec 21 2014 libglx.la-xorg* -rwxr-xr-x 1 root root 415K Dec 21 2014 libglx.so* -rwxr-xr-x 1 root root 415K Dec 21 2014 libglx.so-xorg* lrwxrwxrwx 1 root root 23 Nov 9 22:35 libglx.so.352.41 -> libglx.so.352.41-nvidia
Code:
root@nikita:/var/log/packages# rm /usr/lib64/libEGL.so.352.41* /usr/lib64/libGL.so.352.41* /usr/lib64/xorg/modules/extensions/libglx.so.352.41
Code:
root@nikita:/var/log/packages# ls -lh /usr/lib64/libEGL* -rwxr-xr-x 1 root root 1.2K Oct 22 2013 /usr/lib64/libEGL.la* lrwxrwxrwx 1 root root 15 Nov 12 10:29 /usr/lib64/libEGL.so -> libEGL.so.1.0.0* lrwxrwxrwx 1 root root 15 Nov 12 10:29 /usr/lib64/libEGL.so.1 -> libEGL.so.1.0.0* -rwxr-xr-x 1 root root 115K Oct 22 2013 /usr/lib64/libEGL.so.1.0.0* -rwxr-xr-x 1 root root 115K Oct 22 2013 /usr/lib64/libEGL.so.1.0.0-xorg* root@nikita:/var/log/packages# ls -lh /usr/lib64/libGL* -rwxr-xr-x 1 root root 1.3K Oct 22 2013 /usr/lib64/libGL.la* -rwxr-xr-x 1 root root 1.3K Oct 22 2013 /usr/lib64/libGL.la-xorg* lrwxrwxrwx 1 root root 14 Nov 12 10:29 /usr/lib64/libGL.so -> libGL.so.1.2.0* lrwxrwxrwx 1 root root 14 Nov 12 10:29 /usr/lib64/libGL.so.1 -> libGL.so.1.2.0* -rwxr-xr-x 1 root root 500K Oct 22 2013 /usr/lib64/libGL.so.1.2.0* -rwxr-xr-x 1 root root 500K Oct 22 2013 /usr/lib64/libGL.so.1.2.0-xorg* -rw-r--r-- 1 root root 1.1M Mar 17 2013 /usr/lib64/libGLEW.a lrwxrwxrwx 1 root root 16 Nov 11 16:24 /usr/lib64/libGLEW.so -> libGLEW.so.1.9.0 lrwxrwxrwx 1 root root 16 Nov 11 16:24 /usr/lib64/libGLEW.so.1.9 -> libGLEW.so.1.9.0 -rw-r--r-- 1 root root 516K Mar 17 2013 /usr/lib64/libGLEW.so.1.9.0 -rwxr-xr-x 1 root root 1.3K Feb 21 2013 /usr/lib64/libGLU.la* lrwxrwxrwx 1 root root 15 Nov 11 16:24 /usr/lib64/libGLU.so -> libGLU.so.1.3.1* lrwxrwxrwx 1 root root 15 Nov 11 16:24 /usr/lib64/libGLU.so.1 -> libGLU.so.1.3.1* -rwxr-xr-x 1 root root 505K Feb 21 2013 /usr/lib64/libGLU.so.1.3.1* root@nikita:/var/log/packages# ls -lh /usr/lib64/libGL* -rwxr-xr-x 1 root root 1.3K Oct 22 2013 /usr/lib64/libGL.la* -rwxr-xr-x 1 root root 1.3K Oct 22 2013 /usr/lib64/libGL.la-xorg* lrwxrwxrwx 1 root root 14 Nov 11 16:25 /usr/lib64/libGL.so -> libGL.so.1.2.0* lrwxrwxrwx 1 root root 19 Nov 12 09:32 /usr/lib64/libGL.so.1 -> libGL.so.1.2.0-xorg* -rwxr-xr-x 1 root root 500K Oct 22 2013 /usr/lib64/libGL.so.1.2.0* -rwxr-xr-x 1 root root 500K Oct 22 2013 /usr/lib64/libGL.so.1.2.0-xorg* -rw-r--r-- 1 root root 1.1M Mar 17 2013 /usr/lib64/libGLEW.a lrwxrwxrwx 1 root root 16 Nov 11 16:24 /usr/lib64/libGLEW.so -> libGLEW.so.1.9.0 lrwxrwxrwx 1 root root 16 Nov 11 16:24 /usr/lib64/libGLEW.so.1.9 -> libGLEW.so.1.9.0 -rw-r--r-- 1 root root 516K Mar 17 2013 /usr/lib64/libGLEW.so.1.9.0 -rwxr-xr-x 1 root root 1.3K Feb 21 2013 /usr/lib64/libGLU.la* lrwxrwxrwx 1 root root 15 Nov 11 16:24 /usr/lib64/libGLU.so -> libGLU.so.1.3.1* lrwxrwxrwx 1 root root 15 Nov 11 16:24 /usr/lib64/libGLU.so.1 -> libGLU.so.1.3.1* -rwxr-xr-x 1 root root 505K Feb 21 2013 /usr/lib64/libGLU.so.1.3.1* root@nikita:/var/log/packages# ls -lh /usr/lib64/xorg/modules/extensions total 840K -rwxr-xr-x 1 root root 932 Dec 21 2014 libglx.la* -rwxr-xr-x 1 root root 932 Dec 21 2014 libglx.la-xorg* -rwxr-xr-x 1 root root 415K Dec 21 2014 libglx.so* -rwxr-xr-x 1 root root 415K Dec 21 2014 libglx.so-xorg*
Code:
slackpkg install-new
PS: I have been able to understand why removepkg did not remove the necessary file since the files are registered as
Code:
grep libGL.so.352.41 /var/log/removed_packages/* /var/log/removed_packages/nvidia-driver-352.41-x86_64-1_SBo:usr/lib64/libGL.so.352.41-nvidia
Code:
-rwxr-xr-x 1 root root 1.2M Nov 9 19:28 /usr/lib64/libGL.so.352.41*
Nvidia 352-41 playing bad with GNU/linux Slackware
No comments:
Post a Comment
Thanks for your comment