qt5.3.2移植到arm上出undefined reference to '__sync_sub_and_fetch_4的错

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了qt5.3.2移植到arm上出undefined reference to '__sync_sub_and_fetch_4的错相关的知识,希望对你有一定的参考价值。

qt5.3.2移植到arm上出undefined reference to ‘__sync_sub_and_fetch_4的错。解决办法如下,

使用工具:GCC4.4.1

QT源码:qt5.3.2

前提是确保你的工具已经安装成功了。

解决:
1.下载gcc源码:我用的4.4.1解压,在gcc-4.4.3/gcc/config/arm/目录下找到一个linux-atomic.c;
2.制作链接库:使用libtool制作,输入命令
 libtool --tag=CC --mode=compile arm-linux-gcc -g -O2 -MT linux-atomic.lo -MD -MP -MF linux-atomic.Tpo -c -o linux-atomic.lo linux-atomic.c
然后:
 libtool --tag=CC --mode=link arm-linux-g++ -g -O2 -o liblinux-atomic.la linux-atomic.lo
这一步会在当前目录生成.libs目录;
3.将生成的库拷贝到一个比较短的目录,比如/opt:
cp .libs/liblinux-atomic.a /opt/arm
4.修改Qt的Makefile:
进入Qt源码目录:
cd qt-everywhere-opensource-src-5.*
修改:./qtscript/src/script/Makefile

在LIBS  = 的结尾添加 -L/opt/arm -llinux-atomic
然后编译,该问题就不会出现了。

 

 

 

参考 http://blog.csdn.net/wavemcu/article/details/43898117
















以上是关于qt5.3.2移植到arm上出undefined reference to '__sync_sub_and_fetch_4的错的主要内容,如果未能解决你的问题,请参考以下文章

如何把51程序移植到arm?

如何将Linux下的QT程序移植到arm板上

紧急求助,关于arm版本下QWT库移植出现的错误

应该使用哪个编译器将 C 代码移植到 ARM?

移植openssh到arm linux

QT·移植Qt到ARM平台及搭建Qt交叉编译环境