This is the mail archive of the gcc@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

RE: egcs-1.1b AIX 4.1.5


Hi,
First of all, you shouldn't configure egcs on AIX using --with-gnu-ld and
--with-gnu-as - GNU ld doesn't work well on AIX.

Then, current collect2 doesn't support shared libraries for AIX versions <4.2.
This is because it uses a hack to import symbols from the main executable,
which is supported by AIX ld only on AIX4.2 and later. Otherwise, you'll
run into insoluble problems with exception handling due to multiple
instances of global symbols from libgcc.a in each shared library and in
executable itself.

Regards,
Andrey.

P.S. David, due to multiple requests for using shared libraries on AIX4.1.x
     is it possible to ask IBM if they have plans to release linker update
     with a feature of importing symbols from an executable?

On 08-Sep-98 Reinhard Nissl wrote:
> Hi,
> 
> I have problems with egcs compiled C++ shared libraries/programs on AIX
> 4.1.5. I tried to compile qt-1.40 and succeeded. But when I for example
> want to execute t1 of the tutorials, I get:
> 
> bash-2.02$ t1
>         0509-037 System error - error data is: t1
>         0509-022 Cannot load library ..
>         0509-026 System error: The file access permissions do not allow
> the specified action.
> bash-2.02$
> 
> I only compiled a shared version of qt. The installation program creates
> a link (besides others) that is named libqt.so, but as AIX doesn't use
> file with extension .so, I created a link named libqt.a that points to
> .so file. I'm shure, that libqt.a can be found by the runtime linker. I
> also played around with the --rpath flag while linking t1 and I only get
> this error message, if I add the path, where libqt.a resides. If I don't
> specify the directory of libqt.a, I get an error message like the
> following:
> 
> bash-2.02$ t1
>         0509-037 System error - error data is: t1
>         0509-022 Cannot load library libqt.a.
>         0509-026 System error: A file or directory in the path name does
> not exist.
> bash-2.02$
> 
> Well, this sounds like a bugreport for qt, but I have the same problems,
> when configuring egcs with --enable-shared. Then for example, the
> program moc, which is also part of qt, gets compiled, but cannot be
> executed for the same reason: cannot load library ..
> 
> I configured egcs with --gnu-ld and --gnu-as and I use binutils 2.9.1.
> Any help appreciated.
> 
> Bye.
> --
> Dipl.-Inform. (FH) Reinhard Nissl
> mailto:rnissl@gmx.de
> 


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]