0

我正在尝试在集群上编译本地版本的 gcc 4.7.3。对于配置:

./configure --prefix=$HOME/opt/gcc-4.7.3 --with-gmp=$HOME/opt/gmp --with-mpfr=$HOME/opt/mpfr --with-mpc=$HOME/opt/mpc --with-libelf=$HOME/opt/libelf

编译时我得到:

/home/users/didymos/opt/gmp/lib/libgmp.a(pprime_p.o):(.text+0x448): 未定义引用`__multi3'

/home/users/didymos/opt/gmp/lib/libgmp.a(mod_1.o):(.text+0x158): undefined reference to `__multi3'

/home/users/didymos/opt/gmp/lib/libgmp.a(mod_1.o):(.text+0x1b8): 未定义引用`__multi3'

/home/users/didymos/opt/gmp/lib/libgmp.a(mod_1.o):(.text+0x358): 未定义引用`__multi3'

/home/users/didymos/opt/gmp/lib/libgmp.a(pre_mod_1.o):(.text+0x74): undefined reference to `__multi3'

/home/users/didymos/opt/gmp/lib/libgmp.a(mod_1_1.o):(.text+0x60): 更多未定义的“__multi3”引用如下

collect2:错误:ld 返回 1 个退出状态

make[8]: * [libjavamath.la] 错误 1

make[8]: 离开目录`/home/users/didymos/opt/gcc-4.3.7-scratch/powerpc64-unknown-linux-gnu/32/libjava/classpath/native/jni/java-math'

make[7]: * [all-recursive] 错误 1

make[7]: 离开目录`/home/users/didymos/opt/gcc-4.3.7-scratch/powerpc64-unknown-linux-gnu/32/libjava/classpath/native/jni'

make[6]: * [all-recursive] 错误 1

make[6]: 离开目录`/home/users/didymos/opt/gcc-4.3.7-scratch/powerpc64-unknown-linux-gnu/32/libjava/classpath/native'

make[5]: * [all-recursive] 错误 1

make[5]: 离开目录`/home/users/didymos/opt/gcc-4.3.7-scratch/powerpc64-unknown-linux-gnu/32/libjava/classpath'

make[4]: * [all-recursive] 错误 1

make[4]: 离开目录`/home/users/didymos/opt/gcc-4.3.7-scratch/powerpc64-unknown-linux-gnu/32/libjava'

make[3]: * [multi-do] 错误 1

make[3]: 离开目录`/home/users/didymos/opt/gcc-4.3.7-scratch/powerpc64-unknown-linux-gnu/libjava'

make[2]: * [all-multi] 错误 2

make[2]: 离开目录`/home/users/didymos/opt/gcc-4.3.7-scratch/powerpc64-unknown-linux-gnu/libjava'

make[1]: * [all-target-libjava] 错误 2

make[1]: *等待未完成的工作....

libtool:链接:ranlib .libs/libgfortran.a

libtool: 链接: ( cd ".libs" && rm -f "libgfortran.la" && ln -s "../libgfortran.la" "libgfortran.la" )

make[6]: 离开目录`/home/users/didymos/opt/gcc-4.3.7-scratch/powerpc64-unknown-linux-gnu/32/nof/libgfortran'

make[5]: 离开目录`/home/users/didymos/opt/gcc-4.3.7-scratch/powerpc64-unknown-linux-gnu/32/nof/libgfortran'

make[4]: 离开目录`/home/users/didymos/opt/gcc-4.3.7-scratch/powerpc64-unknown-linux-gnu/libgfortran'

make[3]: 离开目录`/home/users/didymos/opt/gcc-4.3.7-scratch/powerpc64-unknown-linux-gnu/libgfortran'

make[2]: 离开目录`/home/users/didymos/opt/gcc-4.3.7-scratch/powerpc64-unknown-linux-gnu/libgfortran'

make[1]: 离开目录`/home/users/didymos/opt/gcc-4.3.7-scratch'

制作:* [全部] 错误 2

有任何想法吗?谢谢

4

1 回答 1

0

你能检查一下 libgmp 依赖于什么吗?如果 libgmp 依赖于库 A,那么未定义的符号很可能在 A 中。

如果你已经从源代码手动编译了libgmp,你可以在问题中添加configure命令吗?

于 2013-07-23T11:37:03.070 回答