[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Libtool issue with ar(1) on 64-bit AIX
From: |
Daniel Richard G. |
Subject: |
Libtool issue with ar(1) on 64-bit AIX |
Date: |
Wed, 15 Aug 2007 13:14:58 -0400 |
I have a software project that builds using Libtool 1.5.24. At one point,
it produces a gigantic static archive library, that is composed of several
smaller static convenience libraries. Libtool extracts each of the smaller
libraries, and assembles the object files into a new archive library, using
ar(1) on both counts.
Libtool parameterizes the ar(1) invocation to create a new library, in the
AR and AR_FLAGS variables. On 64-bit AIX, AR_FLAGS has to be set to "-X64
cru", as ar(1) only accepts 32-bit objects by default. This much works
fine.
The problem occurs when Libtool extracts the smaller libraries: it uses
"$AR x /path/to/libfoo.a" (in the func_extract_an_archive() function). The
command _name_ is parameterized, but not the _flags_---it uses "x"
unconditionally.
On this system, if you don't pass in the -X64 flag, ar(1) thinks that you
want to extract only the 32-bit objects in the archive. If you're doing a
64-bit build, there of course won't be any. The end result being that what
was supposed to be a gigantic static archive library ends up completely
empty, save for the archive file header.
The flags passed to ar(1) in the extraction step need to be parameterized.
64-bit AIX is a scenario where "ar x" alone doesn't work.
(Please Cc: me on any replies, as I am not subscribed to this list)
--Daniel
--
NAME = Daniel Richard G. ## Remember, skunks _\|/_ meef?
EMAIL1 = address@hidden ## don't smell bad--- (/o|o\) /
EMAIL2 = address@hidden ## it's the people who < (^),>
WWW = http://www.******.org/ ## annoy them that do! / \
--
(****** = site not yet online)