[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[netCDF #IQO-210917]: Fortran 90 manpages missing in netcdf 3.6.2 beta3
- Subject: [netCDF #IQO-210917]: Fortran 90 manpages missing in netcdf 3.6.2 beta3
- Date: Mon, 14 Aug 2006 12:44:18 -0600
> Hi again Ed,
>
> >
>
> That is right, but "configure" will tell if the F77 and/or F90
> compilers are set up. If not, no fortran code will enter the netcdf
> share library in the first place. So when compiling from scratch
> there should not be an issue. Distributing binaries with or without
> F77/F90 support is the only thing that becomes more complex.
The problem is when there *is* f90 on the machine. In that case, even a C-only
program will not build and run for me without being able to find the F90
libraries.
>
> >
> > Do you think this is a bad idea? Would you like to try getting the
> > combined shared
> > library working? It is easy to change the configure script, but
> > then the build breaks for me.
>
> As said, I'm now convinced that for the time being (probably until
> GCC 4.1 or 4.2 comes with gfortran standard built in, it is wiser to
> keep the fortran shared library separate. Just to make the transfer
> of binaries easier, and probably shortening the loading time of C-
> only programs that call the netcdf shared library.
I am using gcc 4.1, which comes with gfortran. But this is not the only fortran
compiler we have to support.
>
> > Any thoughts would be most welcome. This is our first release with
> > shared library support so we are feeling our way forward carefully
> > and would welcome
> > any informed input.
> >
> > Do you use shared libraries a lot? If so, why?
>
> Yes, I use shared libraries a lot. I've been doing so ever since I
> worked on an RS6000 that had that capability about 10 years ago. It
> makes the binary executables SO much smaller. I've been making shared
> libraries whenever I could since then on Linux and now on Mac OS X.
> As a developer for GMT (Generic Mapping Tools), I've been working to
> get the shared library support for Mac OS X in there too. GMT has
> some libraries of its own and uses netCDF in all its ~50 programs.
> You can imagine that the duplication of binary code gets tremendous
> when you are creating a package with that many programs.
>
Thanks.
> > Incidently, some of the docs have been updated, but until the next
> > beta release you
> > would have to do "./configure --enable-docs && make" to build it,
> > and it will only work if you have a recent texinfo and tex
> > installation, and tex is somewhat weird - it works
> > for me on some machines but not others.
>
> It works for me on Mac OS X without a problem. But keep packaging
> WITH the pdf files in there, since not everybody will have TeX set up
> on their computers.
>
Yes, that is the intention.
> >
> > However, you can give it a try, and if it works you will find the
> > latest documentation
> > in the man directory, as text, pdf, info files, web pages, etc.
> >
> >>
> >> 2) In all the manuals, after netcdf calls there is:
> >>
> >> if (status.ne.nf_noerr) call handle_err(status) ... or similar in
> >> case of C and F90
> >>
> >> However, handle_err(status) already checks against nf_noerr, so the
> >> if-statement is superfluous.
> >> It would be much cleaner simply to write after the netcdf calls:
> >>
> >> call handle_err(status)
> >>
> >> In fact, I use a short-cut to that and use, for example:
> >>
> >> call handle_err(nf_close(ncid))
> >>
> >> Just a suggestion. But I think a useful one.
> >
> > Thanks, I will pass that on to the author of that code and see what
> > he thinks.
> >
> > Where are you finding the handle_err() funtion anyway?
>
> It is not in the distro, but it is spelled out earlier on in each of
> the manuals. For example, in the F77 manual:
>
> SUBROUTINE HANDLE_ERR(STATUS)
> INTEGER STATUS
> IF (STATUS .NE. NF_NOERR) THEN
> PRINT *, NF_STRERROR(STATUS)
> STOP ’Stopped’
> ENDIF
> END
>
Yes, I found this (and added it to the index in all documents, to make it
easier to find next time.
> You see there's the status check in there already. Similar in the C
> and F90 manuals. So all the error checks mentioned in the rest of the
> examples in the manuals can be dropped.
>
I will send Russ's answer via email.
>
> >
> > Thanks again for looking at my beta!
> >
> > I am also looking into the problem of the man pages and where they
> > end up, but haven't
> > found a solution yet. Thanks for pointing out the problem.
>
> Yes, I thought it would not be easy. I just wrote a Fink script that
> simply copies the stuff in place after a "make install-strip".
>
> By the way, I noticed that "make install" does not descend into the
> man/ directory to install the manuals and/or the docs. That's fine
> with me, but there is no target install-man (in the main Makefile)
> which should do the job. And there is no install-doc (or similar)
> target that just installs (but not makes) the netcdf*.pdf manuals.
>
Yes, this is the very problem I noticed yesterday.
Thanks,
Ed
Ticket Details
===================
Ticket ID: IQO-210917
Department: Support netCDF
Priority: Normal
Status: Closed