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

20031213: netcdf compiling error on Itanium2/Linux



Shulan liu,

> To: address@hidden
> From: Shulan Liu <address@hidden>
> Subject: netcdf compiling error on Itanium2/Linux
> Organization: University of Nevada-Reno/DRI
> Keywords: netCDF Linux Itanium2

The above message contained the following:

> I tried to compile netcdf-3.5.0 on SGI Altix3700, which is a
> Itanium2 machine with Linux installed.  I tried to use
> intel compiler 7.0, including both C and Fortran compiler: ecc, efc.
> I attached the make.log file in the attachment. Please help.
> 
> Thank you,
> 
> Shulan
> Desert Research Institute
...
> Making `all' in directory /home1/shulan/netCDF/netcdf-3.5.0/src/fortran
> 
> make[2]: Entering directory `/home1/shulan/netCDF/netcdf-3.5.0/src/fortra=
> n'
> gcc -c -O -I../libsrc  -DNDEBUG fort-attio.c
> In file included from ncfortran.h:13,
>                  from fort-attio.c:6:
> cfortran.h:134: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 gcc 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 -DAbsoftUNIXFo=
> rtran     - Absoft Pro Fortran: Use #define AbsoftProFortran     - Portla=
> nd Group Fortran: Use #define pgiFortran"
...

The problem is that the C compiler doesn't know what Fortran compiler
you're using and so doesn't know what argument-passing conventions to
use when compiling the C functions of the Fortran interface.

The solution is to tell the C compiler what conventions to use by
defining a certain C macro in the CPPFLAGS environment variable before
executing the configure script.  Unfortunately, we don't have access to
a Linux, Itanium 2 system with an Intel Fortran compiler, so I'll have
to guess the appropriate settings.

Please try the following:

    1.  Go to the top-level source-directory.

    2.  Perform steps 3 through 5 described near the end of the file
        INSTALL.html.

    3.  Ensure that the CPPFLAGS environment variable defines the C
        macro "DpgiFortran", e.g.,

            export CPPFLAGS=-DpgiFortran

        or

            setenv CPPFLAGS -DpgiFortran

        depending on your user-shell.

        An example of this can be found at

            
http://my.unidata.ucar.edu/content/software/netcdf/other-builds.html#intel-ifc

    4.  Perform steps 6 through 9 described near the end of the file
        INSTALL.html.

Alternatively, you could post an inquiry to the netCDF mailing-list --
someone out there might have solved the same problem.

Please let me know what you discover.

Regards,
Steve Emmerson