Ah, outstanding!  By doing:

  $ ar -x libfoo.a
  $ ld -d y -G -o libfoo.so *.o -L/home/foo/lib -lblah1 -lblah2
  $ gcc -shared -fPIC -I../aolserver/include -g -Wall -o myfoo.so myfoo.c 
/home/foo/lib/libfoo.so

I was able to take apart the vendor's .a file, put it back together as
a libfoo.so, and then compile my own loadable module which
successfully cales libfoo.so.  I don't why this method works when the
others did not, but, it works!

I didn't have the GNU linker so I used the Solaris one, and I had to
give it the -G option ("In dynamic mode only, produces a shared
object.  Undefined symbols are allowed.") or it would die because
standard C library symbols like "atoi" where undefined.

Rob, why did you want to use -nostartfiles ?

On Fri, Oct 26, 2001 at 10:52:26AM -0500, Rob Mayoff wrote:
> +---------- On Oct 26, Jim Wilcoxson said:
> > ar -x blah.a
>
> Followed by
>
> ld -shared -nostartfiles -o blah.so *.o
>
> (If you're using GNU ld, anyway.)

--
Andrew Piskorski <[EMAIL PROTECTED]>
http://www.piskorski.com

Reply via email to