Win10本地编译OpenWrt

Win10本地编译OpenWrt

搭建编译环境

由于OpenWrt编译需要在Ubuntu系统下进行,所以我们现在Win10系统下通过虚拟机安装Ubuntu

安装VMware

首先下载VMware,这里推荐workstation pro版本,下载地址:VMware Workstation Pro for Windows

image

安装完成后,界面是这个样子的

安装Ubuntu

安装完VMware之后,我们就要在里面新建Linux虚拟机,然后安装Ubuntu

首先下载Ubuntu的系统镜像,下载地址:Ubuntu 22.04 LTS

image

如果下载速度非常慢的话可以选择离你比较近的镜像地址

image

然后,点击创建新的虚拟机,选择典型安装,点击安装程序光盘印象文件,选择刚才下载好的Ubuntu系统镜像,点击下一步。

image

输入Linux的用户名和密码,然后设置虚拟机硬盘的位置,这边推荐磁盘大小设置为100G,然后将虚拟磁盘存为单个文件。

image

然后点击自定义硬件,网络适配器这边设置为桥接模式,然后点击完成,VMware就会为我们自动安装Ubuntu

编译OpenWrt

首次编译

安装完成之后,我们就可以进入系统来编译OpenWrt了,首先安装依赖

1
2
sudo apt-get update
sudo apt-get -y install build-essential asciidoc binutils bzip2 gawk gettext git libncurses5-dev libz-dev patch python3.5 python2.7 unzip zlib1g-dev lib32gcc1 libc6-dev-i386 subversion flex uglifyjs git-core gcc-multilib p7zip p7zip-full msmtp libssl-dev texinfo libglib2.0-dev xmlto qemu-utils upx libelf-dev autoconf automake libtool autopoint device-tree-compiler g++-multilib antlr3 gperf wget

然后下载源码,这边我们使用Lean的源码。

1
git clone https://github.com/coolsnowwolf/OpenWrt.git

进入编译配置

1
2
3
./scripts/feeds update -a
./scripts/feeds install -a
make menuconfig

进入编译配置界面,首先选择编译固件对应的架构,这边我们编译x86的固件,保持默认就好

image

然后设置你编译固件所需要的功能,进入LuCI->Applications,选择你的固件所需要的功能

image

配置完成后,点击保存然后退出即可,然后我们输入下面的命令下载dl库

1
make -j8 download V=s

然后开始编译,第一次编译我们采用单线程的方式编译,时间可能比较长,一般在几个小时左右

1
make -j1 V=s

编译完成之后,我们就可以通过FTP工具连接虚拟机把编译好的固件复制到我们本地了

image

编译完成的固件在lede/bin/targets/x86/64/目录,这边我们选择我们需要的版本下载即可

二次编译

如果源码更新了,我们想要体验最新的功能,就可以进行二次编译

1
2
3
4
5
6
cd openwrt
git pull
./scripts/feeds update -a && ./scripts/feeds install -a
make defconfig
make -j8 download
make -j$(($(nproc) + 1)) V=s

如果需要更改编译配置,可以删除配置之后重新生成配置

1
2
3
rm -rf ./tmp && rm -rf .config
make menuconfig
make -j$(($(nproc) + 1)) V=s
作者

ero

发布于

2022-03-26

更新于

2022-06-11

许可协议

评论