第二章 编译openwrt源码
编译openwrt最大的问题,翻墙,库安装不全,导致报错,
1.库安装,库安装其实我也是去看别人的文章,然后,遇到没有安装的库都安装一次,也分不清自己安装了什么库了,我第一次配置开发环境用了3天,这三天,天天安装库,编译就报错,然后查询错误,然后安装库,然后现在虚拟机的Ubuntu14.4基本上是稳定了,我电脑是双系统win10+deepin,目前切换带这个系统上,又遇见编译问题,所以,在这里整理下数据,
一步,安装库文件,
github上提示的库都要安装,
深度截图_选择区域_20181004210400.png
sudo apt-get install build-essential asciidoc binutils bzip2 gawk gettext git subversion libssl-dev libncurses5-dev patch unzip zlib1g-dev
如果是64位系统的话还需要安装32位兼容包
sudo apt-get install libc6:i386 libgcc1:i386 libstdc++5:i386 libstdc++6:i386
sudo apt-get install gcc
sudo apt-get install g++
sudo apt-get install binutils
sudo apt-get install patch
sudo apt-get install bzip2
sudo apt-get install flex
sudo apt-get install bison
sudo apt-get install make
sudo apt-get install autoconf
sudo apt-get install gettext
sudo apt-get install texinfo
sudo apt-get install unzip
sudo apt-get install sharutils
sudo apt-get install subversion
sudo apt-get install libncurses5-dev
sudo apt-get install ncurses-term
sudo apt-get install zlib1g-dev
sudo apt-get install gawk
sudo apt-get install asciidoc
sudo apt-get install libz-dev
以上设计的库都安装一次吧,虽然有点low,避免出问题
二步,下载源代码了,
下载源码需要注意,以前的方式是通过svn,下载的,现在都跑gitthub了,所以需要自己去github搜索了,这里贴出地址来
https://github.com/openwrt/openwrt
在这里下载源码需要注意不要下载master了,需要下载稳定的版本,lede-17.01
这里说下lede和openwrt,在以前是分开的现在合并了,就是这样了
然后更具你的需要是选择git工具下载还是直接下载,如图
深度截图_选择区域_20181004211407.png
将他解压,并导入,dl文件依赖,为了方便不能翻墙的朋友,已经为大家准备好了文件,如图
深度截图_选择区域_20181004213322.png
只需要解压放在openwrt文件目录里面就可以了,下载地址在下面哈,这里不贴出来。这些dl依赖文件
都需要翻墙才能,需要注意的是有的翻墙不是全局的也就是终端访问网络不是翻墙的,推荐搭建用蓝灯,在设置里面设置全局翻墙就可以了!
使用终端进去,然后,就可准备开始编译了
三步,下载feeds更新,这是为了下载和安装让luci之类的第三方包的源码,如果不进行这步的话配置菜单是没有非op的包给你选的
在你源码路径 下执行【./scripts/feeds update -a】
深度截图_选择区域_20181004211619.png然后接着来安装这个更新
深度截图_选择区域_20181004211828.png然后检查配置文件
执行【make defconfig】
第一次使用会是空的,如果编译过就会有数据,
然后开始为自己编译做准备选配置文件,
执行【make menuconfig】
如图,如果编译过Linux内核的应该很熟悉,和这界面有些相识,
深度截图_deepin-terminal_20181004212210.png
我自己有一个gl_net路由器,还有一个520M的千M路由,这里距离这个gl-net路由器为例
第一项为目标系统,用于选择平台系列
第二项为子目标
第三项为参考模型,用于选择目标板型号
其他的话是各种配置之类的东西,一般情况下就配置下第一项和第三项,其他默认就可以出固件了
深度截图_选择区域_20181004212743.png
然后执行,【make V=99 -j8】
j8表示8线程,自己定哈
然后等待编译结束,这是一个漫长的过长超级久,
切记切记中文路径
QQ图片20181004234145.png
这样就好了!