Building GCC for ARM and Linux/ucLibc
Christophe Lyon
christophe.lyon@st.com
Tue Jul 31 14:49:00 GMT 2012
Hello,
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?
For the record, I forced the __stack_chk_fail to succeed (using --target=arm-linux-uclinuxgnueabi and hacking configure by hand), but later ran into troubles when continuing the build of ucLibc, where some parts use the GCC -rdynamic flag, which is rejected in this configuration.
Thanks!
More information about the Gcc-help
mailing list