【问题标题】:hidden symbol `__aeabi_uidivmod' final link failed: Bad value隐藏符号“__aeabi_uidivmod”最终链接失败:错误值
【发布时间】:2017-11-16 18:36:15
【问题描述】:

我有三个C文件a.c、b.cd.c,编译如下:

arm-linux-gnueabihf-gcc -c -fPIC  -Iab/inc/  -I../inc  ab/src/a.c -oa.o

arm-linux-gnueabihf-gcc -c -fPIC  -Iab/inc/  -I../inc  ab/src/b.c -ob.o

arm-linux-gnueabihf-ld -fPIC -shared a.o b.o -olibab.so

arm-linux-gnueabihf-gcc -pthread -Iab/inc/ -I../inc/ -L.  ab/test/src/d.c -L. -lab

如果不是交叉编译,我没有错误或警告,但是在交叉编译中我得到错误:

错误如下

arm-linux-gnueabihf/bin/ld: a.out: hidden symbol `__aeabi_uidivmod' in gcc-linaro-arm-linux-gnueabihf-4.8-2014.04_linux/bin/../lib/gcc/arm-linux-gnueabihf/4.8.3/libgcc.a(_udivsi3.o) is referenced by DSO 
arm-linux-gnueabihf/bin/ld: final link failed: Bad value
collect2: error: ld returned 1 exit status

任何帮助将不胜感激。谢谢!

【问题讨论】:

    标签: gcc compiler-errors compilation cross-platform


    【解决方案1】:

    问题是因为与 linker(ld) 链接,如果我通过 gcc 链接,则不会出现此错误。

    链接器未链接到 libgcc.a,因此出现此错误,这是来自 linaro IRC 频道的响应

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2020-10-21
      • 2016-12-08
      • 2011-08-19
      • 2011-07-04
      • 1970-01-01
      • 2018-09-02
      • 2017-06-22
      • 1970-01-01
      相关资源
      最近更新 更多