Ubuntu下编译openwrt

从网上找的资料,还有自己出现的错误和解决方法,合并整理一下。

很多安装时出错以及找解决方法的过程,已经放在另一篇文章里了,下面也放链接了Ubuntu下编译openwrt的过程出错及解决_m0_60027682的博客-CSDN博客

 参考的编译教程:

在Ubuntu中编译openwrt(全过程) - 勤劳小虾米 - 博客园

『299』 傻瓜式编译OpenWrt固件全流程丨Ubuntu下基于Lean源码编译融合各种插件_哔哩哔哩_bilibili

从零开始:编译自己的openwrt超详细教程

1、首先装好 Ubuntu 64bit,推荐 Ubuntu 20.04 LTS x64

2、安装之前最好先更新下组件包:

sudo apt-get update

然后下载软件包,输入

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

3、 下载好源代码(选其一)

(1)、(官网)下载好后,linux里面建一个目录,上传到Linux,解压(官网下载教程Ubuntu下编译openwrt的过程出错及解决_小蚂蚁t的博客-CSDN博客_编译openwrt出错

rz                                           //弹出的框里选择下载好的文件,把下载的压缩包上传到linux
tar -zxvf 压缩包名.tar.gz        //解压

cd 这个解压好的文件            //进入这个文件

(2)、通过git来下载

从官方源下载:git clone git://git.openwrt.org/openwrt.git

或者:git clone https://github.com/openwrt/openwrt.git

或者下载15.05指定版本的: git clone git://git.openwrt.org/15.05/openwrt.git,下载时间比较漫长,请耐心等待。

进入目录(跳至第5步)

4、缝合一些其他插件(这步先别做,可不做,跳至第5步)

原地址:https://github.com/kenzok8/openwrt-packages

添加下面代码复制到 lede源码根目录 feeds.conf.default 文件

src-git kenzo https://github.com/kenzok8/openwrt-packages

src-git small https://github.com/kenzok8/small

添加软件扩展包,将feeds.conf.default修改为feeds.conf:(别的地方有,但是我没做这步)

cp feeds.conf.default feeds.conf

vi feeds.conf.default(别的地方有,但是我没做这步)

建议删掉最后一行最前面的#号,

像这样子

src-git helloworld https://github.com/fw876/helloworld

5、更新软件包,安装最新包,

更新包列表:./scripts/feeds update -a

集成到menuconfig:./scripts/feeds install -a

出错参考Ubuntu下编译openwrt的过程出错及解决_receipe for target menuconfig failed-CSDN博客

测试编译环境:make menuconfig

若make menuconfig后花屏,参考:SecureCRT编译openwrt固件,测试编译环境输入:make menuconfig后花屏_小蚂蚁t的博客-CSDN博客

6、编译前关于平台、核心、型号的设置(第一二三大项);

这里是一个插件应用说明

https://www.right.com.cn/forum/thread-344825-1-1.html

前面三个根据自己的板子型号去选择(必选)

Target System (Atheros ATH79)--->

Subtarget (Devices with small flash)  --->

Target Profile (TP-Link TL-WR841N/ND v9)  --->

Base system(可选)

        <*> libstdcpp.................................... GNU标准C++库v3

Languages

        Lua --->(可选)

               <*>  libiwinfo-lua...................................... libiwinfo Lua绑定

                <*> lua............................... Lua编程语言(解释器)

 LuCI(必选)

        Collections  ---> 

                 <*> luci................... Uhttpd作为Webserver的LuCI接口(Web 界面

        Themes  ---> 

                -*- luci-theme-bootstrap…………..引导主题(默认)(想好看点可以选其他的)

        Modules---> 

                Translations---> 

                        <*> Chinese Simplified (zh_Hans)…………..简体中文

需要什么插件就安装什么

7:第一次编译耗时非常长也主要是因为要下载各种包(主要取决于网速),第二次就快很多了

make V=99

若编译时间太长,是在下载一些压缩包时,可以在之前编译过的项目里的dl目录下找同样名称的安装包,复制到盖项目中,已减少重新下载的时间。

如果有报错,可以参考一下,这些是我编译过程中遇到的问题Ubuntu下编译openwrt的过程出错及解决_小蚂蚁t的博客-CSDN博客_openwrt编译出错

编译完后

编译完成后的文件地址

再次编译

make clean

make V=99

其他设置

开启IPV6

选上extra packages——ipv6helper

在 Network – Firewall – ip6tables 下启用 ip6tables-extra 和 ip6tables-mod-nat 项。


更改LAN口的默认IP地址

cd lede

vim package/base-files/files/bin/config_generate

大概在99行找到我们默认的原IP地址(192.168.1.1),按“i”把对应的IP更改即可

然后按shift+: 输入wq回车保存退出


编译丰富插件时,建议修改下面两项默认大小,留足插件空间。( x86/64 )!!!

Target Images ---> (16) Kernel partition size (in MB)           #默认是 (16) 建议修改 (256)

Target Images ---> (160) Root filesystem partition size (in MB) #默认是 (160) 建议修改 (512)


如果需要 Cloudflare DDNS 组件

默认情况下 Open­Wrt 中并没有 Cloud­flare DDNS 功能,就算勾选了DDNS也不包含cloudflare运营商。所以需要在编译时选择相应的组件,其位置在 NetworkIP Addresses and Names →ddns-scripets_cloudflare.com-v4

  • 4
    点赞
  • 27
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值