
There are lots of recursive symbol interdependencies, and it just takes a while to resolve them all. On Monday 02 September 2002 09:13, Duncan Coutts wrote:
On Mon, 2 Sep 2002 15:16:37 +0100
"Simon Marlow"
wrote: I got lots of linking errors about duplicate symbols doing using --whole-archive for the standard packages. Perhaps someone who knows a bit more about linking could advise me.
I couldn't get it to work either - although I didn't get any duplicate symbols when linking, it seems the resulting binary didn't have all the symbol information from the library in it. It looks like -export-dynamic doesn't work properly with --whole-archive.
I discovered that just giving -optl--whole-archive.didn't actually pass it on to the linker for some reason. If you use -optl-verbose it'll tell you exaclty what's going on, and --whole-archive was missing.
I'm not sure exactly what's going here. RtsAPIDeprec.o does refer to Addr_Azh_con_info, which is defined in the Addr module in the lang package. However, RtsAPIDeprec normally isn't linked in, because nothing refers to anything in it.
If anyone's interested, in dynamic linking in general or this poroblem in particular my code is here (including a makefile): http://charlesstreet22.force9.co.uk/~duncan/projects/dynlink/
That's a good plan. We can probably make it easier too, perhaps by providing a flag to do the right magic at link-time. I need to think about this some more.
Linking in HSbase.o directly is *very* slow. I don't know enough about linking to know why.
Duncan _______________________________________________ Glasgow-haskell-users mailing list Glasgow-haskell-users@haskell.org http://www.haskell.org/mailman/listinfo/glasgow-haskell-users
-- ----------------------------------- Seth Kurtzberg M. I. S. Corp. 1-480-661-1849