1

我正在尝试在 AIX 上构建 gccgo (9.2),但现在面临一个我无法解决的问题。

机器:AIX 7.1,处理器类型:PowerPC_POWER7,CPU 类型:64 位,内核类型:64 位

错误:“./sync/atomic.gox 存在但不包含任何 Go 导出数据”。

所以我查看了 atomic.gox ,它是空的。(所有 .gox 文件都是空的)。所以接下来我看看 atomic.gox 是如何创建的。该文件由objcopy -j .go_export sync/.libs/atomic.o. 所以 atomic.o 的 .go_export 部分用于创建 atomic.gox。我发现, atomic.oobjdump -s atomic.o没有任何 .go_export 部分,只有“.text、.data 和 .debug”。因此,错误行为位于 .o 文件的创建处。为了创建 atomic.o 文件,我找到了以下行:

libtool:编译:/OS/COMPSRV/trunk/user1/src/gccgo-obj/./gcc/gccgo -B/OS/COMPSRV/trunk/user1/src/gccgo-obj/./gcc/-B/opt/免费软件/gcc9/powerpc-ibm-aix7.1.5.0/bin/ -B/opt/freeware/gcc9/powerpc-ibm-aix7.1.5.0/lib/ -isystem /opt/freeware/gcc9/powerpc-ibm- aix7.1.5.0/include -isystem /opt/freeware/gcc9/powerpc-ibm-aix7.1.5.0/sys-include -O2 -g -I 。-c -fgo-pkgpath=sync/atomic ../.././../gccgo-src/libgo/go/sync/atomic/doc.go ../.././../gccgo-src /libgo/go/sync/atomic/value.go -fPIC -o sync/.libs/atomic.o

这些是我的配置参数:

语言="--enable-languages=go,c,c++"

options="CC=/opt/freeware/bin/gcc --without-gnu-ar --without-gnu-as --with-gnu-ld --with-gmp-include=/usr/include/gmp -- disable-bootstrap --with-gmp-lib=/usr/lib --with-mpfr-include=/usr/include/mpfr --with-mpfr-lib=/usr/lib --with-mpfr=/usr/包括 --with-mpc=/usr/include --disable-nls --disable-libquadmath --disable-libssp --disable-lto --disable-libgomp"

multilib="--启用-multilib"

shared="--启用共享"

静态=“--启用静态”

更多信息:我正在使用 gcc 8.3

编辑:

建议的解决方案:

  • 我添加了--enable-libgo,但错误仍然存​​在
4

1 回答 1

0

看起来可疑的一件事是您似乎没有通过 --enable-libgo 进行配置。也许试试看它是否有帮助?

于 2020-03-18T17:48:47.020 回答