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.
Richard, >Date: Wed, 09 Jul 2003 16:20:10 -500 >From: Richard Anyah <address@hidden> >Organization: North Carolina State University >To: Steve Emmerson <address@hidden> >Subject: Re: 20030709: UDUNITS on UCAR's Blackforest IBM The above message contained the following: ... making `all' in directory /home/blackforest/anyah/udunits-1.11.7/src/lib ln -s ../port/misc/udalloc.c . ln -s ../port/misc/udalloc.h . c89 -c -O -I../port/misc -I../port/cfortran -DUT_DEFAULT_PATH='"/ptmp/anyah/UNIT/etc/udunits.dat"' -D_ALL_SOURCE -Dextname utlib.c ... I think I see the problem and the solution. The UDUNITS package was built with the C compiler's "-Dextname" option (recommended practice) but the netCDF package was not. This means that the names of Fortran routines in the UDUNITS package will end in underscores but the names of Fortran routines in the netCDF package won't. Your program is caught between these different conventions: whichever convention it uses, it won't be able to find the Fortran routines in the package that used the opposite convention. I suggest that you try rebuilding the UDUNITS package without the "-Dextname" option: 1. Go to the top-level source directory of the UDUNITS package. 2. Perform steps 3 through 5 described near the end of the file INSTALL. 3. Edit the file "configure". Find the following lines: # Ensure adherence to the trailing-underscore convention. for arg in -Dextname; do case "$CPPFLAGS" in *$arg*) ;; *) CPPFLAGS="${CPPFLAGS-} $arg" ;; esac done for arg in -qextname; do case "$FFLAGS" in *$arg*) ;; *) FFLAGS="${FFLAGS-} $arg" ;; esac done and either remove them or comment them out. 4. Perform steps 6 through 9 described near the end of the file INSTALL. Then, recompile your program without the "-qextname" option and retry the link step. Please let me know if this helps. Regards, Steve Emmerson