Shared library problem

Marc Auslander marc at watson.ibm.com
Fri Apr 12 07:38:31 AEST 1991


In article <6558 at awdprime.UUCP> andy at ausvm1.iinus1.ibm.com (Andy Martin) writes:

...
>However when I use the -r flag to ignore the unresolved references for a later
>pass I get the error below.

>    % ld -H512 -T512 -o $shobj $objs -bE:$exp -bM:SRE -r
>    % ar rv $shlib $shobj
>    % cc prog.c $shlib -lXll -lbsd -lnck
>    % setenv LIBPATH :
>    % a.out
>    Could not load program a.out 
>    Could not load library $shlib[shobj]
>    Error was: Exec format error
>    %


You cannot make an executable module or library using -r.  -r is only
for intermediate ld steps, with the output intended as input to
another ld step.

A shared object must be executable.  The execloader is telling you it
is not.

By the way, -r always make the module non-executable, even if no
undefined symbols where found.
--


Marc Auslander       <marc at ibm.com>



More information about the Comp.unix.aix mailing list