关于工具链的编译uclibc/gcc

使用之前弄的脚本编译工具链其实还是比较轻松的,脚本也是比较稳定的,不过重点在于配置上,包括target名称的选择,uclibc的配置

一直困扰的nfs挂载不正常的问题最终发现还是uclibc配置不对,另外,对于thread的支持,一般需要使用nptl,然后如果要用gdb的话,gdbserver的编译必须要在uclibc里面启用thread debug,要不然会缺少东西:

#error No uintptr_t available; your C library is too old.

接着还会说thread_db.h 造成的某结构体的成员th不存在。

新的uclibc 0.9.32编译时需要链接libgcc_eh库文件,这个库文件在static阶段是不编译的,如果要让编译,需要硬性打patch实现。

这里贴一个正确的uclibc配置

#
# Automatically generated make config: don't edit
# Version: 0.9.32
# Wed Nov 23 14:53:07 …
more ...