gpt4 book ai didi

c++ - 由于在 aix6.1 上使用 g++4.6.1 出现 "The displacement must be greater than or equal to -32768 and less than or equal to 32767",编译失败

转载 作者:太空宇宙 更新时间:2023-11-04 15:25:58 27 4
gpt4 key购买 nike

我正在尝试使用汇编程序版本 6.1 在 aix6.1 上使用 g++4.6.1 编译 c 代码。

由于以下原因编译失败:-

line 3954495: 1252-171 The displacement must be greater than or equal to
-32768 and less than or equal to 32767.
line 3955281: 1252-171 The displacement must be greater than or equal to
-32768 and less than or equal to 32767.
line 3955395: 1252-171 The displacement must be greater than or equal to
-32768 and less than or equal to 32767.
line 3955401: 1252-171 The displacement must be greater than or equal to
-32768 and less than or equal to 32767.

我使用以下选项编译:-

g++ -o tcl-int-cln.o -maix64 -bbigtoc -c tcl-int-cln.C

我在 aix5.3 上使用 gcc4.0.2 编译了相同的文件。它运行良好。

当您尝试使用 g++ 编译大文件时,通常会发生这种情况。我为此提供了一个选项,但问题仍然存在。这是一个汇编程序问题吗?

有人可以解释一下这个问题还是 gcc 错误或 aix 问题?

任何解决方法?

谢谢。

最佳答案

Known GCC bug自 GCC 2.95 以来。 GCC 无法处理大量输入;然后它将汇编 ld r4,X(r3) 指令(相对负载,位移 X),其中 X 大于 16 位。这在 POWER 上是不允许的。

关于c++ - 由于在 aix6.1 上使用 g++4.6.1 出现 "The displacement must be greater than or equal to -32768 and less than or equal to 32767",编译失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8397962/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com