[GiNaC-list] Results of GiNaC (& CLN) builds

Richard B. Kreckel kreckel at ginac.de
Wed Jul 19 22:45:13 CEST 2006

Richard Haney wrote:

>There are lots of unanswered questions I have about GiNaC and its build
>process.  Here are a few of the seemingly more important ones:
>Why is it necessary to specify the installation root directory at the
>time of running configure?  Why can't that be done _simply_ at the
>actual time of doing the installation?

Because the trinity of configure / make / make install is standard with 
GNU tools and well-known by most people who take delight in the luxury 
of compiling their software from sources.  ;-)  We don't want to 
reinvent the wheel in an area where we aren't experts.

Anyway, specifying --prefix at configuration time makes sense since in 
some cases it is necessary to insert the prefix into non-source files 
(e.g. manpages) and specifying the prefix at the make install step may 
be too late.  For the purpose of copying files from the built-area into 
their final places you are right, of course.  Actually, you *can* 
specify the prefix at the make install step by saying make install 
prefix=/path/to/whereever.  Surprise!

But all this is rather off-topic.

>Why is it necessary to use libtool?  Is libtool a "fixed", universal
>product?  Or is it simply something that is tailored specifically to
>the particular build process, in this case GiNaC's.


>Why is it necessary to compile each library module twice?  (I suppose
>the idea is that two different versions are needed for the two
>different potential forms of the library: "static" and "shared".  Is
>this true?)

Yes, this is true.

>If a .dll version is not possible, can all the excess
>machinations be eliminated by declaring "--disable-shared" on the
>configure command line?

Yes, it can.

>Shouldn't a comment to this effect be put in
>the installation documentation so that mingw-users don't needlessly go
>through the excess machinations in the hopes of getting a .dll?

I'm not so sure.  I am quite happy that the details of building 
libraries are factored out and maintained separately.  Doesn't your 
configure output list a line like "checking whether the gcc linker 
supports shared libraries..."?  If that answer at the end of that line 
is no and it still builds every object twice, then you may wish to 
report that as a bug to the libtool maintainers.


Richard B. Kreckel

More information about the GiNaC-list mailing list