libtool
[Top][All Lists]
Advanced

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

Re: undefined symbol woes


From: Patrick Welche
Subject: Re: undefined symbol woes
Date: Thu, 27 Nov 2003 19:06:05 +0000
User-agent: Mutt/1.5.4i

On Thu, Nov 27, 2003 at 03:27:51PM +0000, Gary V. Vaughan wrote:
> mod_auth_basic.a doesn't contain mod_auth_basic.o.  Are you running with
> - --disable-static?

I was hoping to not create shared modules, but I can't actually see
relevant flags in the libtool invocation. The compile which uses
-prefer-non-pic -static gives a valid .o, and a .lo containing
  pic_object=none
  non_pic_object='mod_auth_basic.o'
It's the link that is odd:
% sh link
ar cru .libs/mod_auth_basic.a
ranlib .libs/mod_auth_basic.a
creating mod_auth_basic.la
(cd .libs && rm -f mod_auth_basic.la && ln -s ../mod_auth_basic.la 
mod_auth_basic.la)

where "link"'s highlights are:
  libtool --mode=link gcc -module -export-dynamic -o mod_auth_basic.la 
mod_auth_basic.lo

> Look through your log output for 'ar' calls.  I suspect you'll find 'ar cru
> .libs/mod_auth_basic.a' and 'ranlib mod_auth_basic.a' but no 'ar cru
> .libslmod_auth_basic.a .libs/mod_auth_basic.o'.
> 
> The difficult bit is figuring out why libtool didn't list the objects on the
> ar call...

absolutely!

Something about -prefer-non-pic -static mixing with dlopen flags?
(Why should all systems -prefer-non-pic when building -static? cf apache's
configure.in:

      my_libtool=`$apr_config --apr-libtool`
      LIBTOOL="$my_libtool \$(LTFLAGS)"
      libtoolversion=`$my_libtool --version`
      case $libtoolversion in
          *1.[[45]]*)
              SH_LIBTOOL='$(LIBTOOL)'
              SHLTCFLAGS="-prefer-pic"
              LTCFLAGS="-prefer-non-pic -static"
              ;;
          *)
              SH_LIBTOOL='$(SHELL) $(top_builddir)/shlibtool $(LTFLAGS)'
              SHLTCFLAGS=""
              LTCFLAGS=""
              ;;
      esac
      ;;
)

Cheers,

Patrick




reply via email to

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