arm-linux-gnueabi、arm-linux-gnueabihf 交叉编译器区别

1、arm-linux-gnueabi:

使用软件浮点(软浮点)。这意味着所有的浮点运算都将由软件库来处理,而不会利用硬件中的浮点运算单元。因此,生成的目标代码包含了对软件浮点库的调用。

2、arm-linux-gnueabihf:

使用硬件浮点(硬浮点)。这意味着编译器会生成使用硬件浮点单元进行计算的指令,从而实现更高效的浮点运算。同时,链接器还会将代码链接到针对硬浮点的库。

ea(小端)

be(大端)

都是小端架构的,区别就是浮点数是通过编译器根据IEEE754标准实现的还是CPU指令集来处理浮点数,就像是X86上面的SSE指令集。

通常用ihf 就可以了,但是如果目标平台的ARM CPU太垃圾不支持硬浮点的话,就只能用 i 版了。

相关推荐
@syh.12 分钟前
【linux】进程控制
linux
何中应2 小时前
vmware的linux虚拟机如何设置以命令行方式启动
linux·运维·服务器
江畔何人初2 小时前
kubernet与docker的关系
linux·运维·云原生
bubuly2 小时前
软件开发全流程注意事项:从需求到运维的全方位指南
大数据·运维·数据库
百炼成神 LV@菜哥3 小时前
Kylin Linux V10 aarch64 安装启动 TigerVNC-Server
linux·服务器·kylin
佑白雪乐3 小时前
<Linux基础11集>电流+二极管+晶体管+存储器
linux
嵌入式郑工3 小时前
RK3566 LubanCat 开发板 USB Gadget 配置完整复盘
linux·驱动开发·ubuntu
one____dream4 小时前
【网安】Reverse-非常规题目
linux·python·安全·网络安全·ctf
j_xxx404_4 小时前
Linux:进程程序替换
linux·运维·服务器
祁鱼鱼鱼鱼鱼4 小时前
Keepalived实验环境设定
linux·服务器·网络