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

Glynn Clements glynn.clements at virgin.net
Tue Jun 25 14:11:49 EDT 2002


Ulrich Leopold wrote:

> -------------------------------------------------------------------
> Mapset <nl500> in Location <Netherlands> 
>          GRASS 5.0.0pre3 > ldd /usr/local/grass5/driver/PNG
>          libz.so.1 => /usr/lib/libz.so.1 (0x4002c000)
>          libgd.so => not found
>          libjpeg.so.62 => /usr/lib/libjpeg.so.62 (0x4003a000)
>          libpng.so.2 => /usr/lib/libpng.so.2 (0x40059000)
>          libm.so.6 => /lib/libm.so.6 (0x4007b000)
>          libc.so.6 => /lib/libc.so.6 (0x4009d000)
>          /lib/ld-linux.so.2 => /lib/ld-linux.so.2 (0x40000000)

> libgd cannot be found and is not included in the path. How can I set the 
> path to libgd? It is in /usr/lib/.

1. Is it called "libgd.so"? Usually, libraries include the full
version number in their name (e.g. libgd.so.1.2), and have a symlink
which uses the major version (e.g. libgd.so.1). An unversioned symlink
(e.g. libgd.so) is normally only required for development, so such
symlinks are often only included if you install the corresponding
"-devel" package. E.g. I have:

lrwxrwxrwx    1 root     root           12 Apr  2 15:51 /usr/lib/libgd.so -> libgd.so.1.2
lrwxrwxrwx    1 root     root           12 Apr  2 15:51 /usr/lib/libgd.so.1 -> libgd.so.1.2
-rwxr-xr-x    1 root     root       156353 Feb  3  2000 /usr/lib/libgd.so.1.2

2. You don't say which OS you are using, but on Linux, when installing
libraries in the standard directories (those which are listed in
/etc/ld.so.conf), you should run "ldconfig" afterwards to update the
loader's cache file (/etc/ld.so.cache); this may be done automatically
at boot time. You shouldn't use LD_LIBRARY_PATH for standard
directories.

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



More information about the grass-user mailing list