第二节,下载openwrt源码和编译环境
文章的开始先说两个重点
1.不要使用root用户编译,普通用户编译即可。
2.自行搭建梯子,以免编译失败。
一,进入虚拟机内的Ubuntu系统
点击左下角的显示应用程序,我们去修改一下Ubuntu的源。

之后点击软件和更新


点击选择最佳服务器

稍等片刻后系统会选择最优的服务器,点击选择服务器并输入密码即可。


打开终端,输入:sudo apt update
sudo apt upgrade
将系统软件升级至最新。
2,安装编译环境
sudo apt-get -y install build-essential asciidoc binutils bzip2 gawk gettext git libncurses5-dev libz-dev patch 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
3,下载openwrt源码
mkdir openwrt
sudo chmod 777 openwrt
cd openwrt
git clone https://github.com/openwrt/openwrt.git
openwrt github地址:https://github.com/openwrt/openwrt

4.更新和安装更多的软件支持。
cd openwrt
./scripts/feeds update -a
./scripts/feeds install -a
5.测试下编译环境
make defconfig

我想我遇到麻烦了,先去解决一下,稍后回来。
不知道啥问题,没能解决这个依赖问题,没关系,我们换一个LEDE来玩吧。
git clone https://github.com/coolsnowwolf/lede
这个是冷雪狼的LEDE,反正是折腾,这个也挺好的
再次make defconfig就正常了

6.让我们愉快的编译吧
make menuconfig
自己选择自己的机型,开始编译即可。
如果是第一次编译的话,建议使用
make V=99 (佐大教的,V一定要大写)
昨天晚上编译了斐讯K2的固件,今天早上过来一看,居然没有.bin文件。
于是网上找到这个问题的解释,应该是我选择了很多的安装包,然后选择的是编译到固件里面,所以就出现了超出固件大小的问题。
没关系,再来一遍。
cd lede
git pull
同步更新一下冷雪狼的代码、
./scripts/feeds update -a && ./scripts/feeds install -a
更新一下feeds
rm -rf ./tmp && rm -rf .config
清除编译配置和缓存
make menuconfig
进入编译配置菜单
make -jn V=s
n=线程数+1,例如4线程的I5填-j5,开始编译
编译完成后固件输出在/lede/bin/targets
以后二次编译:
进入LEDE目录
cd lede
同步更新冷雪狼源码
git pull
更新FEEDS
./scripts/feeds update -a && ./scripts/feeds install -a
清除编译配置和缓存
rm -rf ./tmp && rm -rf .config
进入编译配置菜单
make menuconfig
n=线程数+1,例如4线程的I5填-j5,开始编译
make -jn V=s
编译完成后固件输出在/lede/bin/targets
第二节,下载openwrt源码和编译环境的更多相关文章
- 鸿蒙内核源码分析(编译环境篇) | 编译鸿蒙看这篇或许真的够了 | 百篇博客分析OpenHarmony源码 | v50.06
百篇博客系列篇.本篇为: v50.xx 鸿蒙内核源码分析(编译环境篇) | 编译鸿蒙防掉坑指南 | 51.c.h.o 编译构建相关篇为: v50.xx 鸿蒙内核源码分析(编译环境篇) | 编译鸿蒙防掉 ...
- 通过清华大学镜像下载Android源码并编译源码
之前看源码都是在Windows下用SourceInsight看,虽然达到了研究源码的效果,但终究还是有遗憾...趁着周末,准备在Ubuntu虚拟机上下载编译源码. 之前下源码时,有了解一些Androi ...
- 【转】Linux CentOS内核编译:下载CentOS源码、编译2.6.32-220的错误(apic.c:819 error 'numi_watchdog' undeclared)
一.下载CentOS源码 1.1 查看CentOS版本 cat /etc/issue 1.2 查看Linux内核版本 uname -r 1.3 下载 文件名:kernel-2.6.32-220.el6 ...
- ActiveMQ学习系列(三)----下载github源码并编译
前记:坚持使用官网的资源去学习是挺痛苦的一个过程,昨天瞎溜达了一天,也没看到有系统性的学习文章,倒是发现了github上的ActiveMq项目. 地址:https://github.com/apach ...
- SpringBoot源码分析-编译环境与新建测试模块
建议 分析源码建议不要使用Idea或者Eclipse等IDE工具的反编译功能或者导入源码包的方式看源码,那样不能给框架的源码做注释,所以分析源码之前都得先下载源码并构建,然后在项目中新建一个Modul ...
- 鸿蒙内核源码分析(编译脚本篇) | 如何防编译环境中的牛皮癣 | 百篇博客分析OpenHarmony源码 | v58.01
百篇博客系列篇.本篇为: v58.xx 鸿蒙内核源码分析(环境脚本篇) | 编译鸿蒙原来如此简单 | 51.c.h.o 本篇用两个脚本完成鸿蒙(L1)的编译环境安装/源码下载/编译过程,让编译,调试鸿 ...
- 鸿蒙内核源码分析(编译过程篇) | 简单案例窥视GCC编译全过程 | 百篇博客分析OpenHarmony源码| v57.01
百篇博客系列篇.本篇为: v57.xx 鸿蒙内核源码分析(编译过程篇) | 简单案例窥视编译全过程 | 51.c.h.o 编译构建相关篇为: v50.xx 鸿蒙内核源码分析(编译环境篇) | 编译鸿蒙 ...
- openwrt(一):openwrt源码下载及编译环境搭建
声明:从网上各位大神的博客学习,整理后记录,非原创. 注:请用非root用户来下载源码 导航: 1. openwrt编译环境搭建 2. openwrt源码下载 3. feeds更新 1. openwr ...
- openwrt源码下载移植
openwrt源码下载移植 一.源码下载 1.1下载 由于本人多次尝试从SVN代码地址下载代码,出现无法访问因此这里选择从Git代码地址进行下载.在linux系统命令终端输入 git clone gi ...
随机推荐
- [BZOJ2111]:[ZJOI2010]Perm 排列计数(组合数学)
题目传送门 题目描述 称一个1,2,...,N的排列${P}_{1}$,${P}_{2}$,...,${P}_{N}$是Magic的,当且仅当2≤i≤N时,${P}_{i}$>${P}_{\fr ...
- 【机器学习速成宝典】模型篇05朴素贝叶斯【Naive Bayes】(Python版)
目录 先验概率与后验概率 条件概率公式.全概率公式.贝叶斯公式 什么是朴素贝叶斯(Naive Bayes) 拉普拉斯平滑(Laplace Smoothing) 应用:遇到连续变量怎么办?(多项式分布, ...
- jquery.fileupload-image-editor.js
jquery.fileupload-image-editor.js中 _initEventHandlers: function () { this._super(); var handlers = { ...
- 网络协议之TCP/IP协议
沙漏计时器型TCP/IP协议族,允许IP on everyting,即支持多种形式和物理层和数据链路层实现:同时支持多种多样的应用层协议,扩展了各式各样的服务. IP协议(网际协议) 与IP协议配套使 ...
- java中FastJson的json类型转换
JSON Gson: 来自Google,功能全面.快速.简洁.面向对象.数据传递和解析方便. Jackson:来源FasterXML项目,社区活跃,更新快 解析速度和效率比Gson快,但无法按需解析, ...
- maven的配置及使用
Maven项目对象模型(POM),可以通过一小段描述信息来管理项目的构建,报告和文档的软件项目管理工具. Apache官网下载maven 解压缩,配置环境变量: path路径:E:\apache-ma ...
- 576D Flights for Regular Customers
分析 https://www.cnblogs.com/onioncyc/p/8037056.html 写的好像有点问题 但是大致就是这个意思 代码很好理解 代码 #include<bits/st ...
- 阶段3 1.Mybatis_03.自定义Mybatis框架_5.自定义Mybatis的编码-创建两个默认实现类并分析类之间的关系
把XMLConfigBuilder的包名补全 这样我们就可以调用里面的loadConfiguration方法了 创建工厂实现类 实现SqlSessionFactory的接口 实现接口里面的方法 把cf ...
- 阶段3 1.Mybatis_02.Mybatis入门案例_2.mybatis入门案例中的设计模式分析
读取配合文件 创建工厂 最终图
- 中国MOOC_零基础学Java语言_第2周 判断
浮点数判断大小 public class Main { public static void main(String[] args) { double a = 1.0; double b = 0.1 ...