On Mon, 2011-09-12 at 10:25 +0530, Amit Mahajan wrote: > On Mon, 2011-09-05 at 12:10 +0200, Norman Feske wrote: > > Codezero expects the tool chain to be used for the kernel to not support > > shared libraries. (this is the case for Codesourcery's arm-none-eabi > > tool chain) Such tool chains use to incorporate both libgcc and > > libgcc_eh into the single libgcc.a library. In contrast, for tool chains > > built with '--enable-shared', libgcc does not contain the functions of > > libgcc_eh. Hence, one symbol called '__aeabi_unwind_cpp_pr0' referenced > > by libgcc and normally provided by libgcc_eh remains unresolved. > > > > There are two possible solutions for this problem: We could link > > libgcc_eh to the 'final.elf' image as expected by libgcc. However, this > > way, we will need to implement the the environment expected by > > libgcc_eh. For Codezero, this is pointless because no C++ is used. The > > second option is to provide a dummy symbol for '__aeabi_unwind_cpp_pr0' > > just to make the linker happy. This patch adds such a dummy symbol to > > 'loader/main.c'. (admittedly, 'main.c' is not the perfect location for > > this symbol - so maybe we should provide the symbol in another way?) > > > > Using this patch, the kernel can be built with fully-fledged tool > > chains. Consequently, the currently used two tool chains can then be > > replaced by a single one. > > Ack. > > Looks good, but I think libc is a better place for this as that is used > both by loader and userspace. > > Also, we one of our goal is to improve libc, so as the user can link > with that only and use only none-eabi- toolchain for userapps too.
Seems like we already have it :) in newer codes. amit@amit-laptop:~/Desktop/codezero/conts/userlibs/libc$ cat src/arch-arm/eabi.c /* Dummies to keep Codesourcery 4.1.1 libgcc division exceptions silent. */ void raise(void) { } void __aeabi_unwind_cpp_pr0(void) { } -- Thanks Amit Mahajan _______________________________________________ codezero-devel mailing list codezero-devel@lists.l4dev.org http://lists.l4dev.org/mailman/listinfo/codezero-devel_lists.l4dev.org