MacOS下aarch64交叉编译工具链制作方法

本文介绍了在MacOS环境下如何构建aarch64交叉编译工具链,以解决在ASUS AX86U路由器上安装软件的问题。详细步骤包括安装命令行工具、编译sed、gawk,下载并编译binutils、glibc、gcc、gdb等相关软件,以及解决编译过程中的错误和依赖问题。
摘要由CSDN通过智能技术生成

         这个工具链的制作背景是想在asus ax86u路由器上安装一些软件,而系统自带的ipkg包管理工具安装的软件要么不能用,要么版本过低。所以有了自己编译的想法。

其间在网上查阅了很多大神的文章,很少有关于macos系统的,所以写了这篇文章,一来是可为有需要的有个参考,其次怕自己遗忘。

在此感谢网上大神的文章,由于太多已记不清是哪位大神了,在此一并感谢,望见谅!

Host:Mac OS X版本12.5.1  Target:aarch64-linux

1.编译环境构建

1.1 安装命令行开发工具

打开终端,输入:

xcode-select --install

弹出对话框,问我们是否安装命令行开发工具,我们选择安装-->同意。然后是下载安装,要等好一会。

这个安装好以后,gcc g++ make等都安装好了。

1.2 编译sed、系统自带的sed有些功能不能用、编译glibc时编译不过。这里我用sed 4.8版编译。下载源码以后解压。进入源码目录

./configure 

make 

sudo make install

这个要加上sudo涉及到安装目录权限。

1.3 编译gawk,系统没有gawk。这里我用gawk 5.1.1版编译。下载源码以后解压。进入源码目录

./configure 

make 

sudo make install

1.4 更改/opt目录权限,我这里用这个目录,你也可用其它目录,可能不需要理改权限。

cd /
chown -R 你的用户名 opt 

配置环境变量

export PREFIX=/opt/toolchains
export TARGET=aarch64-linux
export PATH=$PREFIX/bin:$PATH

这个可以写入home目录下的.zshrc文件中一直有效。

2. 下载相关软件源码. 我下载的如下(解压在同一目录下,例如:~/code)

binutils-2.28.1 glibc-2.26 linux-4.1.52 patch-4.1.52 (目标机上的binutils、glibc、linux版本是这个) gdb-12.1 gcc-12.2.0 gmp-6.2.1 mpc-1.2.1 isl-

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值