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

1、arm-linux-gnueabi:

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

2、arm-linux-gnueabihf:

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

ea(小端)

be(大端)

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

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

相关推荐
CheungChunChiu1 小时前
Linux 内核设备模型与驱动框架解析 ——以 rk-pcie 为例
linux·运维·ubuntu
姚不倒1 小时前
负载均衡的概念、策略以及两个核心组件 Nginx 和 Kube-proxy 的对比。
运维·nginx·云原生·kubernetes
列逍2 小时前
Linux进程(三)
linux·运维·服务器·环境变量·命令行参数
水天需0102 小时前
VS Code Ctrl+Shift+V 预览 Markdown 无效的解决方案
linux
赖small强5 小时前
【Linux C/C++开发】Linux 平台 Stack Protector 机制深度解析
linux·c语言·c++·stack protector·stack-protector·金丝雀机制
陌路206 小时前
Linux42 守护进程
linux
liteblue6 小时前
DEB包解包与打包笔记
linux·笔记
minji...6 小时前
Linux 基础IO(一) (C语言文件接口、系统调用文件调用接口open,write,close、文件fd)
linux·运维·服务器·网络·数据结构·c++
赖small强6 小时前
【Linux内存管理】Linux虚拟内存系统详解
linux·虚拟内存·tlb
码龄3年 审核中6 小时前
Linux record 04
linux·运维·服务器