[Top][All Lists]

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

Parallel builds and libtool

From: Marco Di Benedetto
Subject: Parallel builds and libtool
Date: Mon, 01 Apr 2002 12:57:20 -0800

   I'm having a problem with libtool while trying to enable
the '-j' option of make in my tree. I've isolated the problem
to be a "lock" issue with libtool, and I was wondering if you
have ever heard about something similar, and whether or not you
had suggestions on how to fix it.

In a nutshell, suppose you have a directory, and suppose 'make
all' in that directory creates a library invoking libtool.
Starting from that directory without object files, I do a
'make all'... libtool starts creating objects.
Before the 'make all' is over, I do another 'make all' in the
same directory: this second instance of libtool finds a
subset of objects built in .libs, and therefore it first deletes
them, and then it starts re-building everything.
The first instance fails because the objects are not there when
it tries to move them from ./libs/ to ./; the second instance
fails as well.

When applied to my parallel build, what happens is that two
different directories have dependencies from the same library
that doesn't exist yet, and make in both the directories jumps
to the directory of the missing library trying to build it.
As this happens concurrently, I'm exactly in the situation
I've just explained in the previous paragraph. :-(

Maybe locking the directory at the make level would solve the
issue, but that would imply messing around with the automake templates,
so I was wondering if there was any better solution embedded in libtool

shell> libtool --version
ltmain.sh (GNU libtool) 1.4.2 (1.922.2.53 2001/09/11 03:18:52)

shell> automake --version
automake (GNU automake) 1.5
Written by Tom Tromey <address@hidden>.

Thank you.
Marco Di Benedetto
Andiamo Systems, Inc.
tel/fax +1-(408)-525-4481

reply via email to

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