On Fri, 16 Jul 2004, Jaime Perea wrote:
> Thanks for your comments, I attached again the output from rpm --rebuild
> without all the export flags. I'm now working in mdk9.2, the 9.1 version
> was able to compile well some previous release of lam (I guess 7.0.4 or
> so).
Jaime and I iterated a few times about this off-list -- the real culprit
here appears to be an older version of GNU Libtool on the system. Let me
explain...
When building from a source tarball, LAM's build process will use the
Libtool that is included in the tarball. Hence, you'll be using a fairly
recent version of GNU Libtool, regardless of what is installed on your
system.
When building an RPM (e.g., rebuilding an SRPM, as in this case), the
system-installed GNU Libtool will be used (at least, it is in Mandrake's
rpmbuild process -- I don't know offhand what other distros do). If you
have an older version of Libtool, it may not function properly -- LAM's
build process assumes that you have Libtol version 1.5 at a minimum. In
this case, the symptom of this problem was libtool not passing the
"-pthread" flag properly down to individual linker command lines.
Jamie's setting of LDFLAGS to "-lpthread" was a workaround that works on
Linux (but I think it may not work on all platforms).
The better solution is to upgrade your version of Libtool; as of this
writing, it's version 1.5.6. Consult your local GNU mirror for the latest
source distribution; RPMs are also available (Google for them). The 1.5
series is actually fairly stable and has a *lot* of improvements and bug
fixes over the 1.4 series (we converted LAM to it for exactly this
reason).
Hope that helps; and I hope Google indexes this soon so that others can
find this solution as well. :-)
--
{+} Jeff Squyres
{+} jsquyres_at_[hidden]
{+} http://www.lam-mpi.org/
|