suggestion for the autoconf configuration

Richard A. Ryan Richard.A.Ryan at NOAA.GOV
Wed Sep 14 16:58:06 EDT 2005


Hello,


I was/am having a difficult time building all the grads
programs on a RedHat Enterprise Linux WS release 4 box
and so I looked into the configuration and I came across
a few areas where configuration may be simplified.


Before the suggestions,  I have a question---is the
libwww.a in the build files from http://www.w3.org/Library/ ?
My first suggestion may be totally wrong if I'm making an
incorrect assumption about libwww.a being the library from
http://www.w3.org/Library/  However, if it is from that site,
instead of just putting a libwww.a on link command line, you're
probably going to want to get the libraries from

   libwww-config --libs

instead.  Similarly, you're going to want to get the
include files for libwww from

   libwww-config --cflags


To those concerned that this relinquishes control of
dynamic versus static linking of libraries, that leads
me to the next suggestion about finding the correct
libraries and linking to them either dynamically or
statically.  I strongly suggest the use of libtool
http://www.gnu.org/software/libtool/libtool.html
which is supported by automake which provides facilities
to autoconf for libtool, including a command line option
to configure for choosing either static or dynamic linking.


This solution is far more simple than the use of a supplibs
subdirectory.  The developers of libtool also do most of
the work of hunting down libraries on different systems for
your software.  It also handles the command line interfaces
to the compilers and linkers for you on the different
systems.  Because some software requires re-linking upon
installation, libtool also handles software installation.


For documentation on using libtool with automake please
see http://sources.redhat.com/autobook/ or better yet,
buy the book, ``GNU Autoconf, Automake, and Libtool''
by Vaughan, Elliston, Tromey, and Taylor.


A third suggestion comes from the CLI I've seen used for
ruby's configure, and that's the use of the
``--with-PACKAGE-dir=<top package directory>''
flag.  So if netcdf software is in /usr/local/netcdf,
you would configure with

   ./configure --with-netcdf-dir=/usr/local/netcdf

so configure knows where to find netcdf's lib and
include directories.


I am thinking of trying to simplify the grads build
configuration myself.  If I can set up another configure for
the grads client, is anyone out there interested in getting
the new configuration files, and in particular, maintaining
it?  To be honest, I'm not sure I'm going to be able to do
this.


Thanks,
Richard Ryan



More information about the gradsusr mailing list