You are not logged in.

#1 2013-12-23 19:44:45

mikej_96
Member
Registered: 2010-03-19
Posts: 37

[Solved]/usr/lib/libGL.so.1 symlink keeps changing on package installs

Hello,

I recently switched my desktop from using the proprietary nvidia drivers to nouveau. After doing so, I experienced seg faults in many applications (emacs, xfce4-session). I tracked down the problem to be caused by the /usr/lib/libGL.so.1 symlink pointing to the wrong file. I noticed that if I looked in /usr/lib, I would see libGL.so.1 -> libGL.so.190.42 when in fact it should have been pointing to mesa-libGL.so.1.2.0.  ( https://bbs.archlinux.org/viewtopic.php?id=174663 )

Changing the symlink by hand ( sudo ln -sf mesa-libGL.so.1.2.0 libGL.so.1 ) makes everything work again, but every time I install something new the symlink goes back to libGL.so.190.42.

What is causing this symlink to change on every package install and how can I stop this from happening?

Thanks!

Last edited by mikej_96 (2013-12-23 21:25:19)

Offline

#2 2013-12-23 20:04:03

alphaniner
Member
From: Ancapistan
Registered: 2010-07-12
Posts: 2,810

Re: [Solved]/usr/lib/libGL.so.1 symlink keeps changing on package installs

I just made the same switch last week, but my libGL-so.1 is correctly simlinked. So it can't be doesn't seem to be a 'systemic' issue. Also, that version of libGL (190.42) seems rather old.

I would look in to anything you have installed from the AUR, or anything else from 'unofficial' sources like Steam games.

Last edited by alphaniner (2013-12-23 20:06:04)


But whether the Constitution really be one thing, or another, this much is certain - that it has either authorized such a government as we have had, or has been powerless to prevent it. In either case, it is unfit to exist.
-Lysander Spooner

Offline

#3 2013-12-23 20:10:05

mikej_96
Member
Registered: 2010-03-19
Posts: 37

Re: [Solved]/usr/lib/libGL.so.1 symlink keeps changing on package installs

Thanks for the tip. I figured it was something unique to my system, which is a 4 and a half year old install. At one point in time I was running the nvidia outside of the ones in the official repos, so something is probably goofed up from that.

I just wonder what part of the system generates those symlinks. For example, the symlink changed to libGL.so.190.42 when I installed the 'archlinux-wallpaper' package - which obviously should have no affect on any of those libs.

I looked in /etc/ld.so.conf and /etc/ld.so.conf.d and could not find anything unusual. I will keep looking.

Offline

#4 2013-12-23 20:12:06

karol
Archivist
Registered: 2009-05-06
Posts: 25,440

Re: [Solved]/usr/lib/libGL.so.1 symlink keeps changing on package installs

Which package does libGL.so.190.42 belong to?

Offline

#5 2013-12-23 20:12:40

mikej_96
Member
Registered: 2010-03-19
Posts: 37

Re: [Solved]/usr/lib/libGL.so.1 symlink keeps changing on package installs

libGL.so.190.42 does not belong to any package.

Offline

#6 2013-12-23 20:13:51

karol
Archivist
Registered: 2009-05-06
Posts: 25,440

Re: [Solved]/usr/lib/libGL.so.1 symlink keeps changing on package installs

Move that file somewhere else and see if the symlink sticks.

Offline

#7 2013-12-23 20:20:31

alphaniner
Member
From: Ancapistan
Registered: 2010-07-12
Posts: 2,810

Re: [Solved]/usr/lib/libGL.so.1 symlink keeps changing on package installs

If a plain text file is responsible for the modification, you could try searching it out with

find <dir> -type f -exec grep -Il 'libGL.so.190.42' {} \;

or some such.


But whether the Constitution really be one thing, or another, this much is certain - that it has either authorized such a government as we have had, or has been powerless to prevent it. In either case, it is unfit to exist.
-Lysander Spooner

Offline

#8 2013-12-23 20:23:58

mikej_96
Member
Registered: 2010-03-19
Posts: 37

Re: [Solved]/usr/lib/libGL.so.1 symlink keeps changing on package installs

Oh wow - how can this even happen?

I verified that the libGL.so.1 symlink was correct:

ls -lah libGL.so*
lrwxrwxrwx 1 root root   19 Dec 13 12:12 libGL.so -> mesa-libGL.so.1.2.0
lrwxrwxrwx 1 root root   19 Dec 23 14:20 libGL.so.1 -> mesa-libGL.so.1.2.0
lrwxrwxrwx 1 root root   19 Dec 13 12:12 libGL.so.1.2.0 -> mesa-libGL.so.1.2.0
-rwxr-xr-x 1 root root 775K Aug 29  2009 libGL.so.185.18.36
-rwxr-xr-x 1 root root 906K Oct 25  2009 libGL.so.190.42

Then rename the 'bad' libGL file.

$ mv libGL.so.190.42 libGL.so.190.42.why_is_this_here

Then, re-install archlinux wallpaper

$ pacman -S archlinux-wallpaper
warning: archlinux-wallpaper-1.4-1 is up to date -- reinstalling
resolving dependencies...
looking for inter-conflicts...

Packages (1):

Name                       Old Version  New Version  Net Change

extra/archlinux-wallpaper  1.4-1        1.4-1          0.00 MiB

Total Installed Size:   11.78 MiB
Net Upgrade Size:       0.00 MiB

:: Proceed with installation? [Y/n] 
(1/1) checking keys in keyring                               [################################] 100%
(1/1) checking package integrity                             [################################] 100%
(1/1) loading package files                                  [################################] 100%
(1/1) checking for file conflicts                            [################################] 100%
(1/1) reinstalling archlinux-wallpaper                       [################################] 100%

Then check the symlink again

$ ls -lah libGL.so*
lrwxrwxrwx 1 root root   19 Dec 13 12:12 libGL.so -> mesa-libGL.so.1.2.0
lrwxrwxrwx 1 root root   32 Dec 23 14:16 libGL.so.1 -> libGL.so.190.42.why_is_this_here
lrwxrwxrwx 1 root root   19 Dec 13 12:12 libGL.so.1.2.0 -> mesa-libGL.so.1.2.0
-rwxr-xr-x 1 root root 775K Aug 29  2009 libGL.so.185.18.36
-rwxr-xr-x 1 root root 906K Oct 25  2009 libGL.so.190.42.why_is_this_here

It moved back to the unwanted libGL file.

Offline

#9 2013-12-23 20:57:59

mikej_96
Member
Registered: 2010-03-19
Posts: 37

Re: [Solved]/usr/lib/libGL.so.1 symlink keeps changing on package installs

Update:  I was not able to find what would be doing this using the plain text search for libGL.so.190.42.

Offline

#10 2013-12-23 21:09:33

mikej_96
Member
Registered: 2010-03-19
Posts: 37

Re: [Solved]/usr/lib/libGL.so.1 symlink keeps changing on package installs

Looks like running ldconfig generates the symlink. Looks like the question is  - how can I make this stop?

# ldconfig -v | grep "libGL"
ldconfig: Path `/usr/lib' given more than once
ldconfig: Path `/usr/lib64' given more than once
ldconfig: Can't stat /usr/libx32: No such file or directory
	libGLU.so.1 -> libGLU.so.1.3.1
	libGLESv2.so.2 -> libGLESv2.so.2.0.0
	libGLcore.so.1 -> libGLcore.so.190.42
	libGLEWmx.so.1.10 -> libGLEWmx.so.1.10.0
	libGLESv1_CM.so.1 -> libGLESv1_CM.so.1.1.0
	libGLEW.so.1.10 -> libGLEW.so.1.10.0
	libGL.so.1 -> libGL.so.190.42.why_is_this_here    <--------------------------------------------
	libGLESv2.so.2 -> libGLESv2.so.2.0.0
	libGLESv1_CM.so.1 -> libGLESv1_CM.so.1.1.0
	libGL.so.1 -> libGL.so.1.2.0                                 <---------------------------------------------

Last edited by mikej_96 (2013-12-23 21:10:10)

Offline

#11 2013-12-23 21:23:17

Gusar
Member
Registered: 2009-08-25
Posts: 3,605

Re: [Solved]/usr/lib/libGL.so.1 symlink keeps changing on package installs

Just remove the file. And libGL.so.185.18.36 too. You must have installed the Nvdia driver manually at some point in the past, or something similar. I don't see any other reason why you'd have such old orphaned files around.

And the reason ldconfig creates the symlink? Simple, It's the libGL.so with the highest soname.

Offline

#12 2013-12-23 21:24:21

mikej_96
Member
Registered: 2010-03-19
Posts: 37

Re: [Solved]/usr/lib/libGL.so.1 symlink keeps changing on package installs

I don't really understand *why* that that symlink was getting set, but moving the libGL.so.190.42 completely out of /usr/lib seemed to do the trick. That file, along with a few other old libGL files were undoubtedly left over from the non-arch linux nvidia installer. Apparently they were not removed long ago when the uninstall scripts were ran. Seems that having those files present in /usr/lib caused them to get linked to libGL.so.1.

Thanks for the help everyone. Marking as solved.

Offline

#13 2013-12-23 21:35:02

alphaniner
Member
From: Ancapistan
Registered: 2010-07-12
Posts: 2,810

Re: [Solved]/usr/lib/libGL.so.1 symlink keeps changing on package installs

Just wanted to 'bump' to make sure you see Gusar's post (#11) explaining the *why*


But whether the Constitution really be one thing, or another, this much is certain - that it has either authorized such a government as we have had, or has been powerless to prevent it. In either case, it is unfit to exist.
-Lysander Spooner

Offline

#14 2013-12-23 21:36:39

mikej_96
Member
Registered: 2010-03-19
Posts: 37

Re: [Solved]/usr/lib/libGL.so.1 symlink keeps changing on package installs

Yes thanks I saw that after my post.

Thanks again. smile

Offline

Board footer

Powered by FluxBB