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

1、arm-linux-gnueabi:

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

2、arm-linux-gnueabihf:

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

ea(小端)

be(大端)

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

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

相关推荐
cookies_s_s17 分钟前
项目--协程库(C++)前置知识篇
linux·服务器·c++
不过普通话一乙不改名21 分钟前
Linux 网络发包的极致之路:从普通模式到 AF_XDP ZeroCopy
linux·运维·网络
jquerybootstrap35 分钟前
大地2000转经纬度坐标
linux·开发语言·python
x***13391 小时前
如何在Linux中找到MySQL的安装目录
linux·运维·mysql
4***17541 小时前
linux 网卡配置
linux·网络·php
p***92481 小时前
服务器部署,用 nginx 部署后页面刷新 404 问题,宝塔面板修改(修改 nginx.conf 配置文件)
运维·服务器·nginx
HarrySunCn1 小时前
Rocky服务器部署前端静态项目的注意点
运维·服务器
w***37511 小时前
Nginx 的 proxy_pass 使用简介
运维·nginx
南林yan2 小时前
tcpdump
linux·tcpdump
偶像你挑的噻2 小时前
Linux应用开发-9-信号
linux·stm32·嵌入式硬件