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

Re: netCDF, GMT and Mac OS X



Hi Remko,

> Following up on the message from Paul, I send you the finkinfo script  
> that I adapted to compile on both the 32-bit G4 and 64-bit G5  
> platforms. I finally decided to create "fat" shared libraries and  
> binaries (i.e. version that will work on both systems using the  
> optimizations that the respective architectures provide). I have  
> further experiences with plain setups for each system separately as  
> well. But this may unnecessarily complicate things.
> 
> The format of the finkinfo file should be self evident. This  
> particular version includes the compilation of the Fortran code with  
> either g77, fort77 or gfortran, but skips the "make test" step, which  
> as pointed by Paul, seems to require fort77.

I would rather make sure the "make test" works with the available
compilers than skip that step.  I know it works fine with Absoft
Fortran.

> There are still some peculiarities with Mac OS X that I had to  
> circumvent that are completely unexpected:
> - "libtool -dynamic" can be used to create dynamic libraries on G5  
> systems, but not on G4 (it misses to include some essentials from C).
> - The only standard way to create dynamic libraries is the use "gcc - 
> dynamiclib"
> - The creation of static libraries with "libtool -static" works well,  
> but handles *.o files as input only, not a mix of *.a and *.o.
> - The creation of "fat" static libraries REQUIRES the use of libtool  
> and can't be done with "ar".
> 
> These issues are reflected in the finkinfo script.
> 
> I think it will be relatively straightforward to include these Mac OS  
> X specifics in the configure{,.in} files, so that NetCDF can be  
> compiled as is.

We have switched to use of autoconf, automake, and libtool for our
future releases, which may fix some of those problems.  I didn't
realize there were differences between building on G5- versus G4-based
systems, so that's very useful information.  Is there a way to tell if
a given Mac system is a G4 or G5, using a command-line program such as
"uname -a"?  We may actually have access to a G5 system, but I'm
having trouble determining that remotely in an ssh session.

> I have seen that a beta version of 3.6.1 was created but that that  
> tree has been abandoned. Before I delve into 4.0.0, are there any  
> changes that would significantly impact the workings on Mac OS X?  
> Would you be helped if I tested the working of 4.0.0 on Mac OS X?

We haven't abandoned the 3.6.1 version, it's still in beta and we plan
to release a non-beta version when it's ready.  But I don't think there
will be any more netCDF-3 releases after that, since netCDF-4
includes full netCDF-3 support for both file format and APIs.

> Thanks for considering these updates.

Thanks for your efforts in testing them and sending them to us.

--Russ