时间:2023-07-09|浏览:164
那么,OpenWRT是什么呢?OpenWRT是一种开源软件,可以安装在各种低成本的小型电脑上,实现普通路由器所不具备的功能。除此之外,还能进行配置、过滤、去广告、穿透和搭建私有云等功能。
现在软路由有很多种选择,比如KoolShare、OpenWRT等不同的分支。
在构建OpenWRT编译环境时,一般都是在Ubuntu环境下进行。本文以在MacOS Catalina上使用Ubuntu 18.04虚拟机构建编译环境为例。
首先,在MacOS中安装Parallels Desktop虚拟机,然后在虚拟机中安装Ubuntu 18.04 64位桌面版。安装过程相对简单,需要设置用户名、密码、root密码,并启用SSH服务。
安装好Ubuntu虚拟机后,我们将通过SSH登录进行后续操作,所以要先启动SSH服务。
开启SSH服务的命令如下: ``` sudo apt install openssh-server ``` 检查SSH服务是否成功启动: ``` ps aux | grep "ssh" ``` 如果看到了标有sshd的IPFS矿场,则说明SSH服务启动成功。
接下来,设置root密码的命令如下: ``` sudo passwd root ``` 输入用户密码后,再输入root密码,输入两遍即可。
然后,在Ubuntu中安装Putty,在MacOS下使用Putty进行SSH登录: ``` 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 swig ``` 上述命令可以一次性输入。
至此,环境的设置基本结束。
接下来是编译过程。以Lean的OpenWRT为例,通过以下命令将源代码克隆到本地: ``` git clone https://github.com/coolsnowwolf/lede ``` 进入lede目录: ``` cd lede ``` 然后执行以下命令更新和安装编译菜单: ``` ./scripts/feeds update -a ./scripts/feeds install -a make menuconfig ``` 进入菜单界面后,根据需要进行设置。菜单界面可能会有所不同,可以添加和配置一些应用程序。按回车键进入选项,按Y键选择,按ESC键返回上一级菜单,并保存退出。
完成上述操作后,执行以下命令下载dl库: ``` make -j8 download V=s ``` 这个过程可能会非常漫长,需要1至2个小时的时间。
然后,开始编译你需要的固件。可以使用以下命令(第一次编译建议使用单线程): ``` make -j1 V=s ``` 本套代码保证肯定可以编译成功,并包含了R20的所有源代码,包括IPK文件。
编译完成后,生成的固件将保存在指定目录下: ``` /lede/bin/targets ``` 编译过程非常耗时,中间可能会出现错误。一旦定制好固件,就可以刷入设备进行试运行了。
以上就是编译OpenWRT的基本过程。我是腾哥,欢迎关注我的更新和资讯,我的微博是@高腾岳。