From: Rafael L. <rla...@us...> - 2004-01-14 09:12:00
|
* Alan W. Irwin <ai...@us...> [2004-01-13 23:23]: > The extra -L links above would be just a small part of the story. I think > you would need -lcsirocsa and -lcsironn as well. And you would need to take > care of the installed location for libcsiro. And you would need > corresponding flags for libfreetype. In the disable-dyndrivers case it gets > much more complicated since all the drivers are thrown into libplplot. > Thus, you would need linking options for all the libraries the drivers link > to including libgd, libpng, libjpeg, zlib, all the tcl/tk libraries, the X > library, and a few more which I have forgotten. And all of these drivers > are configurable so you would have to allow for that. So, yes, it would be > possible to make this work using the present pure mkoctfile paradigm, but > that paradigm involves _a lot_ of effort to get right for the general case. All this information is available in the libplplotd.la and libplplot.lai files and parsing the dependency_libs file in them should be enough to get all the needed -L and -l flags for mkoctfile. This is the approach I took in the pkg-config support. It will work even in the disable-dyndrivers case: $ ./configure --disable-dyndrivers 2>&1 > /dev/null $ make 2>&1 > /dev/null $ grep dependency_libs src/.libs/libplplotd.la dependency_libs='/usr/lib/gcc-lib/i486-linux/3.3.2/../../..//libfreetype.la /home/rafael/devel/plplot/HEAD/lib/csa/libcsirocsa.la /home/rafael/devel/plplot/HEAD/lib/nn/libcsironn.la /usr/lib/gcc-lib/i486-linux/3.3.2/../../..//libqhull.la /usr/lib/gcc-lib/i486-linux/3.3.2/../../..//libgd.la -L/usr/X11R6/lib -lXpm -lpng /usr/lib/libjpeg.la -litk3.2 -ltk8.4 -litcl3.2 -ltcl8.4 /usr/lib/libfreetype.la -lz -lX11 -lm ' I still think that a similar approach for the Octave bindings is a better solution than the recent libtool hijack. I will try to implement it soon, as time permits. -- Rafael |