For the future, I think we should consider including at least the
required dependencies (GNU Readline, PCRE, BLAS+LAPACK (ATLAS?)) and
all numerical library dependencies (ARPACK, FFTW3, GLPK, Qhull,
QRUPDATE, and SuiteSparse) with Octave. Then we could arrange for the
configure script to automatically fall back to the included packages
if these libraries are not already installed, or if there is some
problem with them that would prevent them from being used. There
could also be a summary message from configure explaining that this is
happening so that the user would have a chance to fix the system
problems and run configure again instead of just using the included
software.
I'm not sure whether we should consider including other libraries as
well. The cURL, HDF5, and zlib libraries might be fairly easy, but
something like GraphicsMagick++ itself requires several more libraries
and I don't think we want to attempt including everything down to the
level of the C library (!). But the list above would go a long way to
avoiding the complaints we see about how hard it is to build Octave
and dependencies. At least running configure and make would work and
build a copy of Octave that would run, though perhaps without graphics
capabilities.
We could also have configure options to force the included libraries
to be used instead of the system libraries. That way we would be able
to point to a set of package versions that are known to work.
I'm not proposing that we do this for the 3.6.0 release, but that we
consider it for 3.8.0.
Comments?
jwe