autoconf
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: how do I avoid dynamic libraries?


From: Nick Bowler
Subject: Re: how do I avoid dynamic libraries?
Date: Tue, 14 Feb 2012 12:13:43 -0500
User-agent: Mutt/1.5.21 (2010-09-15)

Hi Sam,

This sounds like a libtool question, so I'll Cc the libtool list and
try to answer it based on that assumption.

On 2012-02-14 10:18 -0500, Sam Steingold wrote:
> There is a problem with the libffcall (http://www.gnu.org/software/libffcall/
> http://savannah.gnu.org/projects/libffcall) package (un)maintained by
> Bruno Haible, described in <https://bugs.launchpad.net/bugs/274951>:
> 
> -- libffcall should be built without shared libraries as explained in
>    its README[1] file (most of the code is in headers anyway &c)
> 
> -- when clisp is linked against libffcall's shared libraries it crashes
>    on self-test
> 
> So, I have two questions:
> 
> 1. how do I modify the libffcall's configure.in[2] so that the shared
>    libraries are never built even if the user asks for them?

If you use LT_INIT([disable-shared]) in configure.ac, then the default
will be to not build shared libraries.  The user can still enable them
explicitly, though.

To totally disable generating a shared library, you'll need to link the
library using libtool's -static flag (if you're using automake, this
probably means adding it to libffcall_la_LDFLAGS).

Another option is to not use libtool at all.

> 2. how do I modify the clisp's configure.in[3] so that it never finds
>    libffcall's shared libraries even if they are mistakenly installed?

The easiest way is to say "don't do that".

Nevertheless, libtool provides the flag -static-libtool-libs to force it
to use only static libtool libraries.  However, this will affect *all*
libtool libraries that you link against.  I don't know if possible to
link only a subset of the libtool libraries statically.

Another option is to not link against the libtool library at all.

> 
> [1] http://cvs.savannah.gnu.org/viewvc/*checkout*/ffcall/README?root=libffcall
> 
> [2] 
> http://cvs.savannah.gnu.org/viewvc/*checkout*/ffcall/configure.in?root=libffcall
> 
> [3] 
> http://clisp.hg.sourceforge.net/hgweb/clisp/clisp/file/tip/src/m4/ffcall.m4

Hope that helps,
-- 
Nick Bowler, Elliptic Technologies (http://www.elliptictech.com/)




reply via email to

[Prev in Thread] Current Thread [Next in Thread]