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