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