GCC“__gmpn_invert_limb”编译错误

GCC“__gmpn_invert_limb”编译错误

我目前正在尝试使用 GCC 4.2 编译 GCC 4.9.2。我遇到的问题是我有一个有效的 GMP 安装 (6.0.0a),但 GCC 一段时间后无法链接到它。我得到的错误是:

Undefined reference to __gmpn_invert_limb

然后它显示了一些使用该函数的方法,尽管 make check(在 gmp 上)确定该函数工作正常。

使用的命令:

./configure --prefix=/usr/local/lib/gcc --with-gmp=/prefix/path/of/gmp/configure
make

有任何想法吗?

PS:我还尝试下载 gmp 源代码并将其放入 gcc/gmp 中,就像我对 mpfr 所做的那样。相同的结果。

答案1

通常在 gmp 的配置文件中,如果未提供操作系统,则默认情况下不使用任何操作系统,这(至少对于 ARM 而言)会导致 host_os 和 target_os 别名不正确,并导致您引用的未定义引用。

我为 arm-linux-androideabi 修复此问题的方法是更改​​两个实例

 - linux*android*)

 + linux-android*)

在 gmp/配置中。我不确定您的操作系统或 CPU 是什么,但在配置命令中定义它们可能会有所帮助。

相关内容