Re: missing info in the models tarballs.

al davis <[email protected]>
Newsgroups gmane.comp.gnu.gnucap.devel
Message-ID <[email protected]>
On Saturday 24 February 2007 14:09, al davis wrote:
> On Saturday 24 February 2007 03:43, David Fang wrote:
> > I strongly recommend
> > GNU libtool -- it works like magic; 
> 
> Go for it.   I have not used it.  I agree that it is needed.  
> What you see now is a temporary hack to get something out.

I decided to try it ..  That is play with it to compile a 
plugin.

It consists of a couple of shell scripts, and some other files 
which are essentially a database of all of the things that need 
configuring.

It has a reasonably good interface, only slightly more 
complicated than just compiling on a single known system.

1. Compile:
libtool --mode=compile g++ -c c_list.cc

2. Link:
libtool --mode=link g++ c_list.lo -o libc_list.la -rpath /tmp

Now the .so file is hiding in the directory ".libs".

Contrast, without it, but only on a system I know:
(1 step version)
g++ -fPIC -DPIC -shared  -o c_list.so c_list.cc
or (2 step version):
g++ -fPIC -DPIC -c c_list.cc
g++ -shared  -o c_list.so c_list.o

Libtool really does this:
g++ -c c_list.cc  -fPIC -DPIC -o .libs/c_list.o
g++ -shared   .libs/c_list.o  -lstdc++ -lm -lc -lgcc_s   -Wl,-soname -Wl,libc_list.so.0 -o .libs/libc_list.so.0.0.0
.. and some other stuff that is almost harmless but not 
necessary.
....  essentially the same, but with a few "-l" to load some 
libraries.  These are not necessary, but harmless.

I say "almost" harmless because it does take some space.


So far, looks good.

Looking deeper .....

There are some problems:

1. It definitely DOES create a run-time dependency.  If we use 
it in this manner, you will need libtool installed to fully run 
gnucap.  

Some relief ...  such dependency is only there if you want to 
use source plugins.

2. The libtool tarball is about 3 MB. about 3 times the size of 
the gnucap basic tarball. (core + enough plugins to be useful)
It contains lots of stuff for lots of systems.


What would be nice is a "libtool-light" that does just the two 
features needed here, and has the database organized in such a 
way that it is easy to select and install only the one needed.

The best design of a "libtool-light" is probably 20 or 
so "Make2" files.,or actually not the whole thing, just a few 
defines.  Only one would need to be installed, one small file.
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.