Thank you!I've solved this problem! On Fri, Jul 24, 2009 at 10:51 PM, David Turner <[email protected]> wrote:
> These __stack_chk_ references are created by the compiler when you the > -fstack-protector option is enabled. > It is likely enabled by the build system, but sometimes even prebuilt > compiler binaries have it enabled by default. > The corresponding functions are normally in libgcc.a, provided with your > toolchain. > > If this is not the case, you will need to add something like > -fno-stack-protector when compiling sources. > > > On Fri, Jul 24, 2009 at 7:48 AM, Ouyang Jiannan <[email protected]>wrote: > >> I'm porting bionic to our cpu >> I've edited makefiles to enable the compiling process for our arch >> >> make TARGET_ARCH=myarch BUILD_TINY_ANDROID=true HOST_C_INCLUDES="" >> HOST_CUSTOM_LD_COMMAND=false >> >> If the last two options are not added, bionic will be included into >> host_c_includes, and host_custom_ld_command will be true >> I don't know why, and I haven't found anyplace which assign value to these >> variables... >> >> Now, during the compiling of acp and aprior, things went wrong. The >> compiler complain about undefind reference to "__stack_chk_fail" >> and "__stack_chk_guide" >> I've compared the g++ options between arm and our arch, only libelf_arm.a >> was not generated in my arch >> I've also check the symbols defined in libebl.a libelf.a libelfcopy.a, I >> found that in my *.a symbol __stack_chk_fail is undefined, but *.a of arm >> symbol __stack_chk_fail_local is undefined, which is defined in the >> toolchain in prebuilt >> >> I've been trapped here for a long time, and i still can't figure out a >> solution >> >> P.S. I'm using the toolchain of our own arch. And my target is to port >> bionic to our arch... >> >> >> > > > > --~--~---------~--~----~------------~-------~--~----~ unsubscribe: [email protected] website: http://groups.google.com/group/android-porting -~----------~----~----~----~------~----~------~--~---
