[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

20030709: UDUNITS on UCAR's Blackforest IBM



Richard,

>Date: Tue, 8 Jul 2003 18:33:13 -0400 (EDT)
>From: address@hidden
>Organization: UCAR/Unidata
>To: "Steve Emmerson" <address@hidden>
>Subject: Re: 20030708: UDUNITS on UCAR's Blackforest IBM

The above message contained the following:

> The failure is with compiling my program which links to udunits/netcdf
> libraries( ICBC.f). The program does not compile properly, and the error
> message is(see below) is like there is a problem with linking the udunits
> lib.
> 
> 
>  Compilation successful for file ICBC.f.
>         xlf90_r  -o ICBC -b loadmap:paerm  ICBC.o -L/ptmp/anyah/UNIT/
> -lnetcdf -ludunits
> ld: 0711-317 ERROR: Undefined symbol: .utopen
> ld: 0711-317 ERROR: Undefined symbol: .utmake
> ld: 0711-317 ERROR: Undefined symbol: .utdec
> ld: 0711-317 ERROR: Undefined symbol: .uttime
> ld: 0711-317 ERROR: Undefined symbol: .utcaltime
> ld: 0711-317 ERROR: Undefined symbol: .utfree
> **********************************************
> On invoking the nm -g commands , I get the following:
> 
> 
> ***********************************************
> bf0911en$ nm -g ICBC.o |grep -i utopen
> .utopen              U           -

The above indicates that the ICBC module wasn't compiled with the
"-qextname" option (if it was, then the global symbol would be
".utopen_" rather than ".utopen").  Because the netCDF Fortran routine
names have an underscore suffix, the Fortran compilation of the ICBC
must be told to append an underscore suffix to the global symbol names
that it generates.

Try recompiling the ICBC module with the "-qextname" option.

Regards,
Steve Emmerson