swarm-support
[Top][All Lists]
Advanced

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

Re: The old libtool magic returns to frustrate RPM building


From: Tim Mooney
Subject: Re: The old libtool magic returns to frustrate RPM building
Date: Thu, 17 Oct 2002 15:35:39 -0500 (CDT)

In regard to: The old libtool magic returns to frustrate RPM building, Paul...:

>With libtool 1.4.2, rpm/libtool would fail to build libraries properly
>if the prefix for make install was different from the final install
>prefix and some relinking had to be done. That broke rpm building in
>RH7.2, as I recall. Or was it RH7.1? WHichever was released around
>Nov.2001.  Libtool was patched on November 15, 2001, and I built rpms
>for that patched libtool and since then I had no trouble building rpms
>on RH 7.2 and RH7.3. These are the ones I was using:
>
>http://lark.cc.ku.edu/~pauljohn/software/libtool-20011121-1pj.i386.rpm
>http://lark.cc.ku.edu/~pauljohn/software/libtool-libs-20011121-1pj.i386.rpm
>
>I thought this shared library problem was solved then, but now it
>reappears for me in RH8.0.
>
>On RH8.0, I am having trouble building an RPM for the Swarm libraries.
>I get the same thing whether I use the libtool that is distributed with
>RH8.0 or I use the libtool-1.4c edition that I took from their CVS last
>year and built into rpms mentioned above. I can build/install Swarm just
>fine with the regular old configure/make/make install, but if I try to
>build the rpm I get a libtool failure because it can't find libraries
>that are installed in the buildroot.  After the SPEC file dictates this
>
>make prefix=$RPM_BUILD_ROOT%{prefix} install

Paul-

I reported this exact problem on the libtool list several weeks ago.
The Linux vendors have each patched (hacked) libtool in different ways to
get around this problem, and some of their patches actually cause other
problems (which were recently discussed on the rpm mailing list) with
the contents of the `.la' files that get installed.  The problem you're
describing isn't a Linux-specific thing, it affects "buildroot" installs
on pretty much every platform.

What's worse, and that you don't mention in your report, is that if you
are building a new version of a package on a system that already has an
older version of the package installed, when the relinking occurs during a
buildroot installation the things that get relinked will use the
*installed* (older) libraries in the system directories, rather than the
ones that just got installed into the buildroot.  Unless you're carefully
watching your software build, you probably never realize that even though
your `foo' binary linked against the `libfoo.so' in your build directory
while you were building the package, `foo' actually linked against a
different version of `libfoo.so' when you did the buildroot install.  Not
good.

>That causes the install into /tmp/swarm-root/usr and all the "first
>wave" of libraries (libspace, libactivity, etc) get dumped in there, but
>libtool tries to relink, it fails.

Exactly, *unless* you have older versions of libspace, libactivity, etc.
installed on the system.  Then it links with them instead of your newer
versions in the buildroot.

>I'm completely bewildered, and would beg for any help anybody can give.

There's been a great deal of talk about a new release of libtool (likely
off the 1.4.x CVS branch), and I honestly think that this is the biggest
(and probably hardest to fix) bug that I've seen with any version of
libtool.  I'm voting for this to get fixed before any new release of
libtool, but my vote doesn't count for much.  ;-)

You're definitely not the only person that's seeing this, though.  I
*highly* recommend you take the email you sent to rpm-list and send it
to the libtool mailing list as well, so that people there know that this
is a real issue and needs to get fixed.

Tim
-- 
Tim Mooney                              address@hidden
Information Technology Services         (701) 231-1076 (Voice)
Room 242-J6, IACC Building              (701) 231-8541 (Fax)
North Dakota State University, Fargo, ND 58105-5164


                  ==================================
   Swarm-Support is for discussion of the technical details of the day
   to day usage of Swarm.  For list administration needs (esp.
   [un]subscribing), please send a message to <address@hidden>
   with "help" in the body of the message.



reply via email to

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