我正在尝试在 x86 32(sles10 patchlevel 4) 2.6.16.60-0.85.1-vmipae 上为 sles12sp2 构建用于架构 s390x(交叉编译)的 gcc G4.8.5,
但出现错误
/s390x-suse-linux/bin/ld: cannot find -lm
collect2: error: ld returned 1 exit status
---------------------------------------------
/s390x-suse-linux/libstdc++-v3/src'
make[3]: *** [all-recursive] Error 1
make[3]: Leaving directory `toolchain_s390/build.s390x/gcc/s390x-suse-linux/libstdc++-v3'
make[2]: *** [all] Error 2
Error building GCC
非常感谢任何正确的指导
更新:我能够构建 binutils compat compat_binutils compat_gcc compat_gettext compat_links compat_m4 gmp links mpc mpfr
答案1
看起来您正在尝试构建完整的 GCC 交叉编译器,但这需要一个交叉构建的 libc,而您显然还没有。要构建交叉编译器,您需要
- 构建第 1 阶段仅 C 的跨 GCC(
configure
使用--languages=c
或--languages=c,c++
最多使用 构建,make all-gcc
使用 进行安装make install-gcc
), - 用它来为你的目标构建 libc,
- 构建完整的跨海湾合作委员会。