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
-~----------~----~----~----~------~----~------~--~---

Reply via email to