On Mon, 7 Feb 2005, Hal V. Engel wrote: > So I did some more looking around on my system and it turned out that I > had 2 versions of pango installed in 2 locations (1.6 in /usr/local/lib > and 1.8 in /opt/gnome/lib). So I cleaned this up. I also checked > everything else related to GTK and GIMP to make sure that I had no > duplicates before moving on. Did you also check that there were no files named for example libgdk-x11-2.0.so* in /usr/local/lib or anywhere else on the system except for /opt/gnome/lib? (that file is a part of GTK+) > I then un-installed (just to make sure) and built GLIB, Pango, ATK and > GTK. There were no apparent problems during the build process. But > now when I try to run GIMP I get the following error message: > > gimp: error while loading shared > libraries: /opt/gnome/lib/libgtk-x11-2.0.so.0: undefined > symbol:gdk_threads_lock > > I get the same error message when I try to run Firefox and GKrellM. > This is the same error message I was getting after I installed the GTK > 2.4 RPMs. I tested GIMP after building each library and it was fine > until GTK was installed. I can get these running again by backing out > GTK to the version that shipped with my distro. > > I did a search of the gtk-list, gtk-app-devel-list and gtk-devel-list > and there was a thread on this error message on the gtk-list. But it > was a dead end as there was no solution to the problem posted in the > thread. Any ideas about what might be causing this? To me that sounds like it's picking up a 2.2 version of libgdk which didn't have that symbol. You could try running: ldd /path/to/gimp-2.0 to see which shared libraries it depends on. If it seems to pick up libgdk or libgtk from any other directory than /opt/gnome/lib (if that's where you installed GTK+), then you have a problem. You could also check the result of ldd /opt/gnome/lib/libgtk-x11-2.0.so.0 You can run objdump -T /opt/gnome/lib/libgdk-x11-2.0.so.0 | grep lock to make sure that the gdk_threads_lock symbol indeed exists in the libgdk you built. It should be listed in the output from grep. Hope this helps Robert