# apt install build-essential
配置编译工具链
到Linaro下载gcc-linaro-7.4.1-2019.02-x86_64_aarch64-linux-gnu.tar.xz ,解压到/opt
# tar xvf gcc-linaro-7.4.1-2019.02-x86_64_aarch64-linux-gnu.tar.xz -C /opt
将/opt/gcc-linaro-7.4.1-2019.02-x86_64_aarch64-linux-gnu/bin 添加到PATH中
$ export PATH=$PATH:/opt/gcc-linaro-7.4.1-2019.02-x86_64_aarch64-linux-gnu/bin
下载neo2官方内核并使用对应分支如:
$ cd ~/
$ git clone https://github.com/friendlyarm/linux.git
$ cd ~/linux
$ git checkout sunxi-4.11.y
编译
$ make sunxi_arm64_defconfig ARCH=arm64 CROSS_COMPILE=aarch64-linux-gnu-
$ make ARCH=arm64 CROSS_COMPILE=aarch64-linux-gnu-
$ make Image dtbs modules ARCH=arm64 CROSS_COMPILE=aarch64-linux-gnu-
编译rtl88Xxau
$ cd ~/
$ git clone https://github.com/aircrack-ng/rtl8812au
$ cd rtl8812au
$ make ARCH=arm64 CROSS_COMPILE=aarch64-linux-gnu KSRC=~/linux
若是载入ko时遇到version magic 的问题,可一尝试将~/linux/include/linux/vermagic.h 中UTS_RELEASE ” ” 改为目标系统对应的内核版本号 如 “4.14.52” ” “,再次编译后用modinfo查看vermagic。
$ modinfo 88Xxau.ko
name: 88XXau
vermagic: 4.14.52 SMP mod_unload aarch64
Update 20190702
今天证实以上方法编译出来的ko,虽然可以成功载入,但是无线网卡插上去后实际不可用。
只能移步kernel.org下载对应版本的内核源代码,将下面的附件重命名为.config 复制到解压后的内核目录后编译。
$ cd ~/
$ wget https://mirrors.edge.kernel.org/pub/linux/kernel/v4.x/linux-4.14.52.tar.xz
$ tar xvf linux-4.14.52.tar.xz
$ cp config -neo2-aarch64.txt ~/linux-4.14.52/.config
$ cd ~/linux-4.14.52
$ make ARCH=arm64 CROSS_COMPILE=aarch64-linux-gnu
$ cd ~/rtl8812au
$ make ARCH=arm64 CROSS_COMPILE=aarch64-linux-gnu KSRC=~/linux-4.14.52