[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
20031208: problems compiling large file netCDF on Sun Ultra-60
- Subject: 20031208: problems compiling large file netCDF on Sun Ultra-60
- Date: Mon, 08 Dec 2003 16:51:25 -0700
Santiago,
> To: address@hidden
> From: "Santiago Gasso'" <address@hidden>
> Subject: compiling netCDF in an ultra-60 Wstation
> Organization: NASA/GFSC
> Keywords: netCDF large file
The above message contained the following:
> We have just installed the netCDF library in our SolarisOS 5.8 in a Sparc
> Ultra-60. The installation of the netCDF library followed the instructions
> found in the NetCDF website for this OS:
> CC=/opt/SUNWspro/bin/c89
> CFLAGS="-xarch=v9" # 64-bit SPARC binary
> FC=/opt/SUNWspro/bin/f90
> FFLAGS="-w -xarch=v9"
> CXX=/opt/SUNWspro/bin/CC
> CXXFLAGS="-xarch=v9"
>
>
> I am having trouble in compiling a fortran code, actually the failure is at
> the linking stage. The error message I get is:
>
> 40 sunhsieh% make
> f77 -o farop_v13.exe main.o case15rad.o case234rad.o getsungeo.o
> getphase2.o get3param.o readnaap.o readnogaps2.o interpsun.o interp.o
> extscat.o raycross.o efftable.o waterabs.o handle_err.o
> /export/home/ji/netcdf-3.5.0/lib/libnetcdf.a
> ld: fatal: file main.o: wrong ELF class: ELFCLASS64
> ld: fatal: File processing errors. No output written to farop_v13.exe
> make: *** [farop_v13.exe] Error 1
>
>
> It seems that it is related to whether it is a 64 or 32 bits compilation.
> But even when I put the right flags appropriate (and I tried several
> combinations), I keep getting the same error.
>
> Do you have any suggestions? Maybe I need to reinstall or is it an issue of
> the compiler (it's the Sun compiler)?
Strictly speaking, this isn't a netCDF-related problem. I might be able
to help, however, based on how the netCDF package builds 64-bit programs
on a SunOS 5.8/SPARC system.
What is the absolute pathname of your f77(1) utility?
The netCDF package ensures that the "-xarch=v9" option is always
specified on the C and Fortran compilation commands. The f77(1) command
above doesn't have that option.
You should be able to use the file(1) utility to examine the
object-modules in the above f77(1) link-command and determine which ones
are 32-bit and which are 64-bit (you can't mix them).
Please let me know what you discover.
Regards,
Steve Emmerson