我正在使用buildroot在专用机器上构建一个新的gcc交叉编译器。
它工作正常,但我现在需要从另一台机器上运行这个gcc,我有不同的libc版本:-(。当然gcc然后崩溃了。
是否可以使用buildroot静态构建gcc?
答案 0 :(得分:2)
你可以尝试将-static传递给链接器(通过LDFLAGS),但要注意glibc不再支持完全静态链接(相反,它需要一个支持静态链接的glibc构建)。
这是因为nss库(名称服务器开关)将被动态加载(除非你编译自己的glibc - 但这会破坏nss的目的)。但是,这可能足以减少对系统库的依赖性。
但我可以假设一个静态链接的gcc相当庞大 - 这可能会导致启动时间过长。
答案 1 :(得分:0)
如果您的目标只是制作可重新定位的工具链,则与expat,gmp,mpfr和mpc静态链接应该足够了。您只需申请https://patchwork.ozlabs.org/patch/359841/
即可