前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >嵌入式开发环境搭建

嵌入式开发环境搭建

作者头像
润森
发布2019-10-09 11:16:24
1.9K0
发布2019-10-09 11:16:24
举报
文章被收录于专栏:毛利学Python毛利学Python

学习一时爽,一直学习一直爽

  Hello,大家好,我是 もうり,一个从无到有的技术小白。

开车!开车!

車を運転する

運転手さんがまた転覆しました。

翻车正常

OpenWrt 可以被描述为一个嵌入式的 Linux 发行版。现在叫lede,全名Linux嵌入式开发环境项目(Linux Embedded Development Environment)

openwrt干嘛用的 答案:漏洞挖掘

嵌入式正向开发

  • 硬件的基本结构
  • 构建Openwrt开发环境(SDK)
  • 嵌入式系统结构
  • Bootloader基础结构与移植(基于uboot源码分析)
  • Kernel基础结构解析(Linux内核源码与关键对象分析,设计KLM模块)
  • 文件系统的宏观与微观结构
  • 应用程序开发技巧(Web、脚本、后门、流量分析)

嵌入式逆向破解与漏洞挖掘

  • 硬件的破解流程
  • 固件的解析流程
  • 确定漏洞攻击面
  • Fuzzing向量监控(Tools & 自定义脚本)
  • 漏洞挖掘流程与技巧
  • 漏洞利用脚本设计

嵌入式设备权限驻留

  • 嵌入式后门与功能模块设计
  • 嵌入式跳板程序设计
  • WIFI攻击(Air Crack)

首先感谢朋友的指导

下面的朋友的推文

嵌入式开发环境部署

搭建环境

  • openwrt(虚拟机)

安装好vmware先,网上大把教程

下载镜像:

http://archive.openwrt.org/releases/17.01.4/targets/x86/64/lede-17.01.4-x86-64-combined-ext4.img.gz

下载是一个img,转化成vmdk,因为vm导入不了img,vbox可以

转换工具:StarWindConvert

上网搜下StarWindConvert,将img换成

下面就是vm装openwrt虚拟机了,网上还是有很多教程导入虚拟机

我openwrt

内存不用太大,不是开发环境

还有选择IDE,不要SCSI

IDE接口是普通PC的标准接口,而SCSI并不是专门为硬盘设计的接口,是一种广泛应用于小型机上的高速数据传输技术。SCSI硬盘主要应用于中、高端服务器和高档工作站中。

开机钱按回车

建立密码 passwd

因为使用的是net

默认是桥接网卡(修改为dhcp模式,默认桥接之后可能为物理机网关) :

vim /etc/config/network

默认是这个的

删下面两行,添加dhcp

重启网卡

/etc/init.d/network restart

那时不知什么鬼,重启网卡一直失败,卡了十几天,删了n次,重新来,也不知道什么回事,最近成功了,可能我样子不好。

ifconfig 查看ip

shift + pgup 来切换画面

我的ip是192.168.96.132,不行的画ping 下物理机的网关,肯定ping不同,那网络配置有问题

浏览器直接打开192.168.96.132进入界面

密码是之前设置的密码

下载个xterm,以前用ssh,xterm可以传文件,还挺好用

不大就30M

还可以上传文件,顺便连下服务器

  • ubuntu编译环境

编译环境大点的,编译最起码要4个小时,耗电耗网

安装Ubuntu 16.04.6 LTS

终端下载相关软件包

代码语言:javascript
复制
 apt-get install gcc g++ binutils patch bzip2 flex bison make autoconf gettext texinfo unzip sharutils subversion libncurses5-dev ncurses-term zlib1g-dev subversion git-core gawk asciidoc libz-dev 

下载Openwrt对应源码:git clone git://github.com/openwrt/openwrt.git

这是发现git clone 下载速度太慢了

进入终端命令行模式,输入

代码语言:javascript
复制
sudo vim /etc/hosts

输入i进入编辑命令,英文输入法输入G,vim编辑器跳到hosts文件的最后一行

在vi打开的hosts文件中添加如下格式:

代码语言:javascript
复制
192.30.253.112 github.com
151.101.44.249 github.global.ssl.fastly.net

esc退出编辑模式,输入:wq,保存hosts文件,修改hosts结束

更新DNS缓存,输入

代码语言:javascript
复制
sudo /etc/init.d/networking restart

进入克隆的文件夹( 时间长)

代码语言:javascript
复制
./scripts/feeds update -a    #更新packages
./scripts/feeds install -a   #安装feeds包

配置

代码语言:javascript
复制
make meuconfig  #配置

那时遇到了make menuconfig显示错误“Your display is too small to run Menuconfig!”

把终端窗口适当的调大(或是直接最大化)就行了。

这里的选项可以看下朋友的推文

嵌入式开发环境部署

编译命令

代码语言:javascript
复制
make V=s        #编译

搭建个环境都这么痛苦

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2019-10-07,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 小刘IT教程 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 搭建环境
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档