[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: AIX: More troubles
From: |
Roumen Petrov |
Subject: |
Re: AIX: More troubles |
Date: |
Thu, 07 Feb 2008 23:56:39 +0200 |
User-agent: |
Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.8.1.11) Gecko/20071129 SeaMonkey/1.1.7 |
Roumen Petrov wrote:
Daniel Sands wrote:
I have an executable that dlopens modules, and the modules make use of
symbols provided by the executable. Since AIX does not export symbols
unless either it has to (if needed for direct linkage to a shared
object) or you REALLY want it to (either by -bexpall or by providing
an exports list), these symbols don't resolve. So it either crashes
(if compiled without -brtl) or complains about unresolved references.
Is there a Libtool-standard way to make the executable export all of
its symbols?
The standard is to add libtool flag -export-dynamic to executable
LDFLAGS but may be libtool is not ported to you linker.
For GNU linker:
./libtool --config | grep export_dynamic
export_dynamic_flag_spec="\${wl}--export-dynamic"
Roumen
Since Daniel's e-mail address return mails - reason: User unknown
so I quote response.
You're right: On AIX this flag is blank. I'm also scratching my head
> because I'm sure I got a successful run without -brtl once the symbols
> were exported. But today that is not the case: Both the library and
> the executable must be built with -brtl if the library references
> symbols within the executable. So those flags should also be added to
> the AIX platform. Basically, -bexpall (or do the nm > exports trick)
> on executables, and -brtl on everything.
I could not help him to resolve issue (I don't have access to AIX, nor
experience ).
Daniel please find attached file bootstrap.sh.gz with sample code and
build based on autotools. The sample is strip down of C++ version.
Please could you adapt to you host environment and post result to list
so that people with experience on AIX to help you.
Also it is wort to try libtool version 1.2.26 where AIX support is
improved or may be to check 2.1b since it will be rool up soon.
Roumen
bootstrap.sh.gz
Description: application/gzip