ubuntu搭建编译OpenWRT

搭建OpenWRT开发环境

打开终端,输入执行 sudo apt-get update(检查软件包的更新):

 sudo apt-get install gcc g++ binutils patch bzip2 flex bison make autoconf gettext texinfo unzip sharutils libncurses5-dev ncurses-term zlib1g-dev gawk asciidoc libz-dev git-core uuid-dev libacl1-dev liblzo2-dev pkg-config libc6-dev curl libxml-parser-perl ocaml-nox        

(ubuntu 16.04版本)运行上述代码

sudo apt-get install subversion build-essential libncurses5-dev zlib1g-dev gawk git ccache gettext libssl-dev xsltproc zip

(ubuntu 18.04版本)运行上述代码

sudo apt-get -y install build-essential asciidoc binutils bzip2 gawk gettext git libncurses5-dev libz-dev patch python3 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 curl swig rsync

(ubuntu 20.04版本)运行上述代码

下载OpenWRT源码

下载完毕后关闭终端,在桌面创建一个新的名为OpenWRT的文件夹,在其中打开终端输入   下载openwrt源码git clone https://git.lede-project.org/source.git lede

OpenWRT的源码版本不同可能会导致编译OpenWRT时出现问题。

git clone -b openwrt-18.06 https://github.com/openwrt/openwrt.git 

这一行代码可以调用下载18.06版本的OpenWRT源码。

或者去官网找所需要的版本。

ps:这里作者有一个小问题。创建的OpenWRT目录最好是放在用户的根目录下(主要是不能放在中文路径下,放在中文路径的目录下没有问题,但是后期偶尔会出现错误)。

编译OpenWRT

首先,在OpenWRT文件夹中的lede文件夹中打开终端。

 

 

在终端输入 ls ,检查其中有没有scripts目录(没有就从重新下载源码开始),输入 cd scripts/,进入目录scripts:

 ./feeds update -a 

输入  ./feeds update -a  更新feeds.conf中列出的所有包,否则将更新所指定的包(这一步很重要,而且容易出问题,会导致接下来OpenWRT编译时缺少依赖)。更新完成后再输入  ./feeds install -a  使用-p 选项从所有包或从指定包中安装所有包。

待安装完毕后,输入 cd.. 返回上一层。(如果安装这一步出现问题,可以看看我的其他博文,可能可以解决)

make menuconfig

在终端输入 make menuconfig 进入页面选择接下来你所使用的设备的机型(下面的例子为树莓派3B型):

 

 

现在是选择好的情况,和初次进入此页面的有一定差异。

然后更改选项Target system项、Subtarget项 以及 Target Profile项(回车进入,上下移动,后面不再重复),根据你所选用的设备来进行更改。

更改luci选项设置(空格键确认)。进入下面第三个图界面需连按俩下空格直至括号内变成 * 号。

 

 

 

 

 

 

改完后移动至Exit退出,选择yes保存选择。

 

make V=99

最后,再终端输入  make V=99  进行openwrt的第一次编译。

第一次编译会下载很多东西,且因为是在下载国外的一些文件耗时很长(快的话5,6个小时是常见的),建议各位选择好一点的网络进行下载。

第一次编译完成后,以后再进行编译就会很快了。

 

https://blog.csdn.net/m0_60027682/article/details/120974979

posted @ 2023-02-11 20:46  流水江湖  阅读(357)  评论(0编辑  收藏  举报