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.
Helin, > To: address@hidden > From: Helin Wei <address@hidden> > Subject: compiling problem for udunits > Organization: UCAR/Unidata > Keywords: 200205022058.g42Kwwa20657 The above message contained the following: > cc -c -O -I../port/misc -I../port/cfortran > -DUT_DEFAULT_PATH='"/home/hwei/udunits-1.11.7/etc/udunits.dat"' utlib.c > In file included from utlib.c:29: > ../port/cfortran/cfortran.h:132:3: #error "cfortran.h: Can't find your > environment among: - MIPS cc and f77 2.0. (e.g. Silicon Graphics, > DECstations, ...) - IBM AIX XL C and FORTRAN Compiler/6000 Version > 01.01.0000.0000 - VAX VMS CC 3.1 and FORTRAN 5.4. > - Alpha VMS DEC C 1.3 and DEC FORTRAN 6.0. > - Alpha OSF DEC C and DEC Fortran for > OSF/1 AXP Version 1.2 - Apollo DomainOS 10.2 (sys5.3) with > f77 10.7 and cc 6.7. - CRAY > - NEC SX-4 SUPER-UX > - CONVEX > - Sun > - PowerStation Fortran > with Visual C++ - HP9000s300/s700/s800 > Latest test with: HP-UX A.08.07 A 9000/730 - LynxOS: cc or g > cc with f2c. - VAXUltrix: > vcc,cc or gcc with f2c. gcc or cc with f77. - > f77 with vcc works; but missing link magic for f77 I/O. - > NO fort. None of gcc, cc or vcc generate required names. - f2c > : Use #define f2cFortran, or cc -Df2cFortran - NAG > f90: Use #define NAGf90Fortran, or cc -DNAGf90Fortran - > Absoft UNIX F77: Use #define AbsoftUNIXFortran or cc -DAbsoftUNIXFortran > - Absoft Pro Fortran: Use #define AbsoftProFortran - Portlan > d Group Fortran: Use #define pgiFortran" > make[1]: *** [utlib.o] Error 1 > make[1]: Leaving directory `/home/hwei/udunits-1.11.7/src/lib' > make: *** [lib/all] Error 1 The above indicates that the file "cfortran.h" doesn't know what conventions to use when a Fortran routine calls a C method. It can be told what conventions to use by defining a certain C macro. For your environment, the macro should be "f2cFortran". The INSTALL file contains examples of this. Please try the following: 1. Go to the top-level source directory. 2. Perorm steps 3 through 5 described near the end of the INSTALL file. 3. Ensure that the CPPFLAGS environment variable contains the string "-Df2cFortran", e.g. export CPPFLAGS="-Df2cFortran" or setenv CPPFLAGS Df2cFortran depending on your user shell. 4. Perform steps 6 through 9 described near the end of the INSTALL file. Please let me know if this works. Regards, Steve Emmerson <http://www.unidata.ucar.edu>