Digit wrote: [...] > * when you create an executable (either static or dynamic) *or* a > shared library, link it to this libgcc.a. this means that the > aeabi functions required by the executable/library are directly > copied into it. yes, this also means that these functions will be > duplicated in the process space of a program that links to several > shared libraries requiring them. note that libgcc.a must appear > last in your link command.
Yup, that works perfectly. Thanks very much! (To my embarassment, I'd actually gone and *looked* for libgcc.a earlier in order to try statically linking; but then didn't find it and assumed that CodeSourcery doesn't provide one. It does, it's just in a non-standard place. If I'd kept looking this would have been sorted days ago. Sigh.) For reference to anyone else who may run into this, in order to build my library: CSDK = "c:/Program Files/CodeSourcery/Sourcery G++ Lite" LIBDIR = $(CSDK)/lib/gcc/arm-none-linux-gnueabi/4.2.1 LIBRARIES = $(LIBDIR)/libgcc.a LD = $(CSDK)/bin/arm-none-linux-gnueabi-ld $(LD) -r static -o libFnord.so.tmp foo1.o foo2.o foo3.o $(LIBRARIES) $(LD) -shared -Tarmelf_linux_eabi.xsc -o libFnord.so libFnord.so.tmp (Gotchas: make doesn't like filenames with spaces, so you have to be very careful about your use of quoting; make *really* doesn't like : in paths on the right hand side of a makefile rule.) Thanks for all the assistance! -- David Given [EMAIL PROTECTED] --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "Android Developers" group. To post to this group, send email to [email protected] To unsubscribe from this group, send email to [EMAIL PROTECTED] Announcing the new M5 SDK! http://android-developers.blogspot.com/2008/02/android-sdk-m5-rc14-now-available.html For more options, visit this group at http://groups.google.com/group/android-developers?hl=en -~----------~----~----~----~------~----~------~--~---

