1

我正在尝试在嵌入式 linux 设备上编译 tensorflow,但我一直遇到这个错误,

/usr/lib/gcc/arm-linux-gnueabihf/4.9/libgcc.a(fp16.o): In function `__gnu_h2f_ieee':
(.text+0x11a): relocation truncated to fit: R_ARM_THM_JUMP11 against symbol `__gnu_h2f_internal' defined in .text section in /usr/lib/gcc/arm-linux-gnueabihf/4.9/libgcc.a(fp16.o)

据我所知,链接器正在尝试静态链接 libgcc 的一部分,并且地址超出了跳转指令的范围。我看到的问题是 libgcc 已在启用 thumb 的情况下编译,因为 R_ARM_THM_JUMP11 是 Thumb16 指令。我以正确的方式看待这个吗?我能做些什么来解决这个问题?我相信编译编译器是一个很大的过程,我想避免它。我可以使用没有拇指编译的不同 libgcc 吗?我可以只重新编译 gcc 的 libgcc 组件吗?

编辑:我尝试强制 -shared-libgcc,据我了解应该可以解决问题,但没有任何区别

4

0 回答 0