[GRASSLIST:3958] Re: error while loading shared libraries

Glynn Clements glynn.clements at virgin.net
Tue Jun 25 17:13:24 EDT 2002


Ulrich Leopold wrote:

> Yes, I think it is a link problem in the binary driver. And I am running 
> RedHat Linux 7.2 with grass5.0.0pre3. Unfortunately I acannot run 
> ldconfig as a user. The library version I have is:
> 
> lrwxrwxrwx    1 root     root           14 May 13 14:06 libgd.so.1 -> libgd.so.1.8.4
> lrwxrwxrwx    1 root     root           14 May 13 14:06 libgd.so.1.8 -> libgd.so.1.8.4
> -rwxr-xr-x    1 root     root       196866 Aug 13  2001 libgd.so.1.8.4
> 
> 
> What would you suggest as a good solution?

Try creating a symlink called libgd.so pointing to
/usr/lib/libgd.so.1. The symlink can be in any directory, but that
directory must be added to LD_LIBRARY_PATH. Note that the GRASS
startup automatically adds $GISBASE/lib to LD_LIBRARY_PATH, so:

	ln -s /usr/lib/libgd.so.1 $GISBASE/lib/libgd.so

should suffice.

HOWEVER: the fact that driver/PNG has a dependency upon "libgd.so"
rather than libgd.so.1 leads me to suspect that it may have been built
using GD 2.0.x (the lack of a version in the library's "soname" is a
known problem with the Makefile for GD 2.0.x).

If this is the case, then the above won't work (you will get
"undefined symbol" errors), and you will have to either install GD
2.0.x or recompile the PNG driver from source.

-- 
Glynn Clements <glynn.clements at virgin.net>



More information about the grass-user mailing list