Login



Page Rank
PDF Print E-mail
Written by Batuhan Osmanoglu   
Monday, 31 August 2009 18:11

SuSE can not Find Library

 Recently we had to relocate our computers from one computing facility to the other. All the computers had to get a new static IP address. Which was easy to change through YAST. But on one system we could not get yast to work. It kept giving this message:

computer:~ # yast
warning: the qt frontend is installed but does not work
warning: the ncurses frontend is installed but does not work
You need to install yast2-ncurses to use the YaST2 text mode interface

The weird part was yast2-ncurses was installed. So I though we could reinstall this. However the zypper and rug were giving similar error messages:

computer:~ # zypper
zypper: error while loading shared libraries: libgobject-2.0.so.0: cannot open shared object file: No such file or directory
computer:~ # rug
/usr/bin/mono: error while loading shared libraries: libgthread-2.0.so.0: cannot open shared object file: No such file or directory

After the error message with Rug  I thought there mightbe a problem with the libraries. But I didn't really know which environment parameter to change. I checked the man page for "mono" and read about an environment parameter called MONO_PATH which would set the path for libraries. However that did not work. 

So on a similar system I checked for the location of the libraries, libgobject-2.0.so.0 and libgthread-2.0.so.0. They were located in: /opt/gnome/lib64:/opt/gnome/lib/

Then I checked the script for rug:

 #!/bin/sh
export LD_LIBRARY_PATH="/usr/lib64:/usr/lib64/rug${LD_LIBRARY_PATH+:$LD_LIBRARY_PATH}"
export MONO_GAC_PREFIX="/usr${MONO_GAC_PREFIX+:$MONO_GAC_PREFIX}"
exec /usr/bin/mono $RUG_MONO_ARGS /usr/lib64/rug/rug.exe "$@"

Note that it is exporting LD_LIBRARY_PATH. So I decided to check what the LD_LIBRARY_PATH was on the working system, and to my surprise saw it empty. I went ahead and set the LD_LIBRARY_PATH anyway to get rug running. 

 export LD_LIBRARY_PATH=/opt/gnome/lib64:/opt/gnome/lib/

That solved my problem for now. I'm not sure what went wrong but I'll do a syste-wide update hoping this will get things right.

See Also:

 Re: Update fails with Package kernel-default-2.6.16.60-0.21 is already installed