arm-linux-gnueabi使用softfp模式,浮点运算由FPU执行,但参数通过通用寄存器传递。 arm-linux-gnueabihf使用hard模式,浮点运算和参数传递都通过FPU寄存器进行。 性能差异: arm-linux-gnueabihf由于减少了浮点参数传递时的类型转换,通常能提供更好的性能,特别是在浮点运算密集的应用中。 arm-linux-gnueabi的性能可能稍逊一...
softfp : armel架构(对应的编译器为gcc-arm-linux-gnueabi)采用的默认值,用fpu计算,但是传参数用普通寄存器传,这样中断的时候,只需要保存普通寄存器,中断负荷小,但是参数需要转换成浮点的再计算。 hard : armhf架构(对应的编译器gcc-arm-linux-gnueabihf)采用的默认值,用fpu计算,传参数也用fpu中的浮点寄存器传,省...
softfp : armel架构(对应的编译器为gcc-arm-linux-gnueabi)采用的默认值,用fpu计算,但是传参数用普通寄存器传,这样中断的时候,只需要保存普通寄存器,中断负荷小,但是参数需要转换成浮点的再计算。 hard : armhf架构(对应的编译器gcc-arm-linux-gnueabihf)采用的默认值,用fpu计算,传参数也用fpu中的浮点寄存器传,省...
1. 下载arm-linux-gnueabihf工具链的安装包。这个安装包通常是一个压缩文件,可以从官方网站下载或者是从第三方源获取。 2. 解压安装包。将下载的安装包解压到一个文件夹中,例如~/arm-linux-gnueabihf。 3. 配置环境变量。打开终端,编辑文件~/.bashrc,添加以下内容: ``` export PATH=$PATH:~/arm-linux-gnueabi...
将刚刚下载的[gcc-linaro-4.9.4-2017.01-x86_64_arm-linux-gnueabihf.tar.xz]放入tool文件夹中。 在Ubuntu 中创建目录:/usr/local/arm,命令如下: sudo mkdir /usr/local/arm 创建完成以后将刚刚拷贝的交叉编译器复制到/usr/local/arm 这个目录中,在终端使用命令 ...
softfp : armel架构(对应的编译器为gcc-arm-linux-gnueabi)采用的默认值,用fpu计算,但是传参数用普通寄存器传,这样中断的时候,只需要保存普通寄存器,中断负荷小,但是参数需要转换成浮点的再计算。 hard : armhf架构(对应的编译器gcc-arm-linux-gnueabihf)采用的默认值,用fpu计算,传参数也用fpu中的浮点寄存器传,省...
softfp : armel架构(对应的编译器为gcc-arm-linux-gnueabi)采用的默认值,用fpu计算,但是传参数用普通寄存器传,这样中断的时候,只需要保存普通寄存器,中断负荷小,但是参数需要转换成浮点的再计算。 hard : armhf架构(对应的编译器gcc-arm-linux-gnueabihf)采用的默认值,用fpu计算,传参数也用fpu中的浮点寄存器传,省...
1、arm 表示这是编译 arm 架构代码的编译器。 2、none 表示厂商,一般半导体厂商会修改通用的交叉编译器,此处就是半导体厂商的名 字,ARM 自己做的交叉编译这里为 none,表示没有厂商。 3、linux 表示运行在 linu…
移动应用开发:在移动应用开发中,通常需要将应用程序编译为适用于移动设备的可执行文件。通过与arm-linux-gnueabihf交叉编译,可以在PC上进行开发和调试,然后将生成的可执行文件部署到移动设备上。 跨平台开发:通过与arm-linux-gnueabihf交叉编译,可以在不同的架构之间共享代码和资源,从而实现更好的代码复用和跨平台开发。
终端输入:cd /usr/local/arm 解压命令:sudo tar -vxf gcc-linaro-4.9.4-2017.01-x86_64_arm-linux-gnueabihf.tar.xz 等待解压完成(几分钟),解压完成以后会生成一个名为“gcc-linaro-4.9.4-2017.01-x86_64_arm-linux-gnueabihf”的文件夹,这个文件夹里面就是我们的交叉编译工具链。