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

本文提供了解决Qt5.3.2在ARM平台移植时遇到的undefined reference to '__sync_sub_and_fetch_4'错误的具体步骤。通过下载GCC源码并制作特定的链接库,最终修改Qt的Makefile文件来解决问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

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.youkuaiyun.com/wavemcu/article/details/43898117

转载于:https://www.cnblogs.com/hqishen/p/6413987.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值