This archive contains answers to questions sent to Unidata support through mid-2025. Note that the archive is no longer being updated. We provide the archive for reference; many of the answers presented here remain technically correct, even if somewhat outdated. For the most up-to-date information on the use of NSF Unidata software and data services, please consult the Software Documentation first.
Hi Brendon, re: LDM shared library not found when trying to run newly built ldm-mcidas decoders Here is the set of environment variable definitions that I use when building ldm-mcidas v2012 in my CentOS 6.5 VM development environment: Bash/Bourne shells: # For ldm-mcidas builds CC=cc FC=gfortran CPP_MCIDAS='-I/home/mcidas/mcidas2009/src' LD_MCIDAS='-L/home/mcidas/lib -lmcidas' CPP_NETCDF='-I/home/mcidas/mcidas2009/netcdf/libsrc' LD_NETCDF='-L/home/mcidas/lib -lnetcdf' LD_MATH='-lm' LD_LDM='/home/ldm/lib/libldm.a /home/ldm/lib/libxml2.a' #LDFLAGS='-Wl,-rpath,/home/ldm/lib' #LD_LDM='-L/home/ldm/lib -lldm -lxml2' LD_FORTRAN='-static -lf2c' LD_X11='' FTPDIR=$HOME/ldm-mcidas/ftp FTPBINDIR=$HOME/ldm-mcidas/ftpbin export CC FC CPP_MCIDAS LDFLAGS LD_MCIDAS CPP_NETCDF LD_NETCDF LD_MATH LD_LDM LD_FORTRAN LD_X11 FTPDIR FTPBINDIR To build using the shared LDM library and with "burning in" the location of the shared LDM library, I uncomment the two commented lines above and comment out the LD_LDM line: # For ldm-mcidas builds CC=cc FC=gfortran CPP_MCIDAS='-I/home/mcidas/mcidas2009/src' LD_MCIDAS='-L/home/mcidas/lib -lmcidas' CPP_NETCDF='-I/home/mcidas/mcidas2009/netcdf/libsrc' LD_NETCDF='-L/home/mcidas/lib -lnetcdf' LD_MATH='-lm' #LD_LDM='/home/ldm/lib/libldm.a /home/ldm/lib/libxml2.a' LDFLAGS='-Wl,-rpath,/home/ldm/lib' LD_LDM='-L/home/ldm/lib -lldm -lxml2' LD_FORTRAN='-static -lf2c' LD_X11='' FTPDIR=$HOME/ldm-mcidas/ftp FTPBINDIR=$HOME/ldm-mcidas/ftpbin export CC FC CPP_MCIDAS LDFLAGS LD_MCIDAS CPP_NETCDF LD_NETCDF LD_MATH LD_LDM LD_FORTRAN LD_X11 FTPDIR FTPBINDIR The results of building using static LDM library linking are: cd ~ldm/ldm-mcidas-2012/src -- make environment variable settings active ./configure && make && make install ls -alt ../bin total 1604 -rwxr-xr-x 1 ldm Unidata 7762 Jul 1 15:44 batch.k -rwxr-xr-x 1 ldm Unidata 52392 Jul 1 15:44 lgt2md -rwxr-xr-x 1 ldm Unidata 719357 Jul 1 15:44 proftomd -rwxr-xr-x 1 ldm Unidata 247849 Jul 1 15:44 pngg2gini -rwxr-xr-x 1 ldm Unidata 87346 Jul 1 15:44 zlibg2gini -rwxr-xr-x 1 ldm Unidata 251660 Jul 1 15:44 pnga2area -rwxr-xr-x 1 ldm Unidata 247268 Jul 1 15:44 area2png -rwxr-xr-x 1 ldm Unidata 4529 May 22 2013 uwgrid.sh drwxrwsr-x 2 ldm Unidata 4096 May 22 2013 . drwxr-xr-x 8 ldm Unidata 4096 Sep 11 2012 .. $ ldd ../bin/pnga2area linux-vdso.so.1 => (0x00007fff51cd1000) libm.so.6 => /lib64/libm.so.6 (0x0000003732a00000) libc.so.6 => /lib64/libc.so.6 (0x0000003731e00000) /lib64/ld-linux-x86-64.so.2 (0x0000003731a00000) The results of building when linking against the shared LDM library are: $ ls -alt ../bin total 1480 drwxrwsr-x 2 ldm Unidata 4096 Jul 1 15:48 . -rwxr-xr-x 1 ldm Unidata 4529 Jul 1 15:48 uwgrid.sh -rwxr-xr-x 1 ldm Unidata 7762 Jul 1 15:48 batch.k -rwxr-xr-x 1 ldm Unidata 34323 Jul 1 15:48 lgt2md -rwxr-xr-x 1 ldm Unidata 701718 Jul 1 15:48 proftomd -rwxr-xr-x 1 ldm Unidata 226809 Jul 1 15:48 pngg2gini -rwxr-xr-x 1 ldm Unidata 64031 Jul 1 15:48 zlibg2gini -rwxr-xr-x 1 ldm Unidata 226856 Jul 1 15:48 pnga2area -rwxr-xr-x 1 ldm Unidata 223446 Jul 1 15:48 area2png drwxr-xr-x 8 ldm Unidata 4096 Sep 11 2012 .. $ ldd ../bin/pnga2area linux-vdso.so.1 => (0x00007fff269ff000) libldm.so.0 => /home/ldm/lib/libldm.so.0 (0x00007f9b9866d000) libxml2.so.2 => /home/ldm/lib/libxml2.so.2 (0x00007f9b98400000) libm.so.6 => /lib64/libm.so.6 (0x0000003732a00000) libc.so.6 => /lib64/libc.so.6 (0x0000003731e00000) libpthread.so.0 => /lib64/libpthread.so.0 (0x0000003732600000) libdl.so.2 => /lib64/libdl.so.2 (0x0000003732200000) /lib64/ld-linux-x86-64.so.2 (0x0000003731a00000) As I noted in my email earlier today, I much prefer to link against the static LDM library as this allows one to roll the LDM back to a version that predates versions in which the shared LDM library is built. NB: the HOME directory for 'ldm' in the examples above was /home/ldm. This may have to be changed for your 'ldm' user. Cheers, Tom -- **************************************************************************** Unidata User Support UCAR Unidata Program (303) 497-8642 P.O. Box 3000 address@hidden Boulder, CO 80307 ---------------------------------------------------------------------------- Unidata HomePage http://www.unidata.ucar.edu **************************************************************************** Ticket Details =================== Ticket ID: UJW-658634 Department: Support ldm-mcidas Priority: Normal Status: Closed