On Tue, Jul 31, 2012 at 7:48 AM, Christophe Lyon <christophe.lyon@xxxxxx> wrote:
>
> I have some trouble to build the right cross-GCC for ARM running Linux and
> ucLibc, which I want to support -fstack-protector.
>
> Indeed, if I use arm-uclinuxeabi or arm-unknown-uclinux-uclibcgnueabi as
> --target triplet, GCC's configure says:
> checking __stack_chk_fail in target C library... no
>
> but this function is actually provided by ucLibc. I need this test to
> succeed such that -fstack-protector does not imply -lssp_non_shared -lssp.
>
> Given that configure's test is based upon the $target value, I am wondering
> which triplet I should be using, since this test uses:
> case "$target" in
> *-*-linux* | *-*-kfreebsd*-gnu | *-*-knetbsd*-gnu)
> [...]
> *-*-gnu*)
> [...]
>
> I have also looked at config.gcc, and I think the triplet should also match
> arm*-*-uclinux* to get the right configuration.
>
> What triplet should I use?
I don't know. Perhaps the uClibc developers can suggest something.
I see that the tree supports *-*-linux-uclibc in various cases. But I
do also see uclinux used. I'm not sure why this discrepancy arose.
Probably the test for stack_check_fail should match uclinux as well as
linux-gnu.
Ian
[Linux C Programming]
[Linux Kernel]
[eCos]
[Fedora Development]
[Fedora Announce]
[Autoconf]
[The DWARVES Debugging Tools]
[Yosemite Campsites]
[Yosemite News]
[Linux GCC]