libtool-patches
[Top][All Lists]
Advanced

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

FYI - ltmain.in patch


From: Gary V. Vaughan
Subject: FYI - ltmain.in patch
Date: Wed, 20 Dec 2000 23:30:30 +0000
User-agent: Mutt/1.2.5i

You may have noticed that the mdemo-static.test series has been
failing for the last week or so.  Having fixed libltdl to correctly
extract the dependency_libs setting from the pseudo-library, the
following bug was revealed:

When lt_dlopen()ing a preloaded library with libtool libraries as
deplibs, ltdl then tries to tryall_dlopen each of these dependencies.
With mdemo (for instance) libfoo2.la depends on libsub.la, so
lt_dlopen()ing libfoo2.la tries to also dlopen libsub.la, which fails
for a static only build (since libsub.la is not preloaded, and ltdl
cannot load the shared component of libsub.la since it was built
static only).

The problem is especially wierd because libsub.la *is* statically
linked into mdemo -- however, libltdl cannot see those symbols in the
preloaded_symbols table so they cannot satisfy the deplib requirements
of libsub2.la.  They do however satisfy the undefined symbols in
foo1.la, since foo1.la doesn't list libsub.la as a deplib.

I have applied the attached patch, which fixes the bug by dlpreloading
all libtool library deplibs of all preloaded libraries -- in the case
of mdemo libsub.la is actually linked in twice: once to satisfy
foo1.la; and then again as a preloaded library to satisfy libfoo2.la!

Cheers,
        Gary.
-- 
  ___              _   ___   __              _         mailto: address@hidden
 / __|__ _ _ ___ _| | / / | / /_ _ _  _ __ _| |_  __ _ ___       address@hidden 
| (_ / _` | '_|// / |/ /| |/ / _` | || / _` | ' \/ _` | _ \
 \___\__,_|_|\_, /|___(_)___/\__,_|\_,_\__, |_||_\__,_|//_/
home page:  /___/                      /___/                  gpg public key:
http://www.oranda.demon.co.uk           http://www.oranda.demon.co.uk/key.asc

Attachment: 2000-12-20-deplibs.patch
Description: Text document


reply via email to

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