[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
20020924: Unsatisfied UDUNITS symbols when linking readgeneral.f
- Subject: 20020924: Unsatisfied UDUNITS symbols when linking readgeneral.f
- Date: Tue, 24 Sep 2002 08:52:16 -0600
Hans-Juergen,
>Date: Tue, 24 Sep 2002 11:08:15 +0200 (METDST)
>From: Hans-Juergen Panitz <address@hidden>
>Organization: Institut =?iso-8859-1?Q?f=FCr?= Meteorologie und Klimaforschung
>To: address@hidden
>Subject: Re: 20020923: Unsatisfied UDUNITS symbols when linking readgeneral.f
>Keywords: 200209231227.g8NCRs103672
The above message contained the following:
> thank you for your quick answer. I performed the command you suggested
> for all unsatisfied symbols (The result of the nm command for the
> whole library is attached). The result was:
>
> $ nm -g /opt/udunits/lib/libudunits.a |grep -i uttime
> uttime_ | 4760|extern|entry |$CODE$
> $ nm -g /opt/udunits/lib/libudunits.a |grep -i utcaltime
> utcaltime_ | 19120|extern|entry |$CODE$
> $ nm -g /opt/udunits/lib/libudunits.a |grep -i utopen
> utopen_ | 11736|extern|entry |$CODE$
> $ nm -g /opt/udunits/lib/libudunits.a |grep -i utfree
> utfree_ | 19520|extern|entry |$CODE$
> $ nm -g /opt/udunits/lib/libudunits.a |grep -i utdec
> utdec_ | 12432|extern|entry |$CODE$
> $ nm -g /opt/udunits/lib/libudunits.a |grep -i utcaltime
> utcaltime_ | 19120|extern|entry |$CODE$
> $ nm -g /opt/udunits/lib/libudunits.a |grep -i utmake
> utmake_ | 19368|extern|entry |$CODE$
>
> All symbols are defined it the library but all with an underscore at the end.
> Thus I included the underscore whenever the routines appear in the FORTRAN
> program.
>
> Then I performed the following f90-command:
>
> f90 -o readgeneral readgeneral.f -L/opt/netcdf/lib -lnetcdf
> -L/opt/udunits/lib
> -ludunits
>
> that lead to the following result:
>
> readgeneral.f
> main program
> external subroutine GRIDREAD
> external subroutine UNPACK
> external subroutine TIMEINDEX
> external subroutine XHOUR
> external subroutine UDPARSE
> external subroutine UDUERR
> external function NBLEN
>
> 4069 Lines Compiled
> /usr/ccs/bin/ld: (Warning) At least one PA 2.0 object file (readgeneral.o)
> was
> detected. The linked output may not run on a PA 1.x system.
> /usr/ccs/bin/ld: Unsatisfied symbols:
> ceil (code)
> floor (code)
> log10 (code)
> pow (code)
> fmod (code)
The above symbols are the names of functions in the Standard C math
library. They are used by the UDUNITS library.
Try adding a reference to the math library to your link-command.
Typically, the reference is "-lm". For example
f90 -o readgeneral readgeneral.f -L/opt/netcdf/lib -lnetcdf
-L/opt/udunits/lib -ludunits -lm
Please let me know if this helps.
Regards,
Steve Emmerson <http://www.unidata.ucar.edu>