[Developers] cannot generate libthorn_CactusBindings.a on IBM SP5 because argument list is too long

Tom Goodale goodale at cct.lsu.edu
Tue Dec 4 05:32:51 CST 2007


On Tue, 4 Dec 2007, Thomas Radke wrote:

> Hi,
>
> the Cactus integration tests (for which the results can be found in the
> portal https://portal.cactuscode.org) are also run every night on an IBM
> SP5 at LSU. There I have the problem that, for a configuration with very
> many thorns, the Cactus bindings library cannot be generated:
>
>> gmake[2]: execvp: ar: The parameter or environment lists are too long.
>> gmake[2]: *** [/scratch/tradke/Cactus/configs/Einstein/lib/libthorn_CactusBindings.a] Error 127

Ouch.

> Didn't we once had a similar problems with command lines being too long
> ? Was there a solution to that problem ?

There used to be two cases:  in older versions of Cactus all files were 
put as .o files in one directory and linked together - we got around that 
by making a library for each thorn (which makes more sense anyway); I 
think there was also a problem with the shell on older IBMs but that 
should not be a problem with bash.

One way it could be fixed here would be to incrementally build the ar - 
i.e. make an archive for the files in one directory, and then append files 
from other directories.  The alternative is incremental linking and making 
a .o file for each thorn, which would have the advantage of catching 
duplicate symbols at link time, but a disadvantage in being very linker 
dependent on how it's done so needing more effort to port to different 
architectures.

Cheers,

Tom


More information about the Developers mailing list