openwrt是嵌入式linux,非常方便的OpenWrt的嵌入式Linux开发环境

今天听中央经济广播电台说,今年有559万大学毕业生,大学生的就业形式严峻.我想那些精通Linux开发的毕业大学生们,估计一点也不用担心,因为他们已经不再是一颗大白菜了.

最近在帮一个朋友把OpenWrt移植到一块单板上,有一些心得,分享给大家.

OpenWrt是一个很好的学习Linux的平台,而且使用一台现成Linksys的路由器做为你的硬件开发平台.希望下面对OpenWrt的开发环境的一些介绍能够对初学Linux的嵌入式开发的同学们有用.(下面的文字有部分翻译自OpenWrt的Document)

当对于刚刚开始做嵌入式linux设备的开发的最大挑战是:你不能只安装一个linux拷贝就期望能够生成firmware.由于大多数嵌入式设备的硬件平台大多数时间和你的开发机器的硬件不兼容,因此需要一个过程叫做交叉编译,才能编译并生成一个的linux发行版本运行在你的设备上.

这个创建交叉编译器的过程比较复杂.大多数情况下你不会这样做,一般使用一个现成的交叉编译工具,这样能够节省很多时间,但是这个现成的工具一般不是最新的,且一般不会更新.同样对于linux kernel来说,一般使用单板或者芯片供应商提供的,它一般不是最新的,而你并不清楚这个kernel是否打过补丁,做过哪些修改.

在OpenWrt的开源项目,它只提供了你需要的源代码包的补丁,当你编译的时候,它的Makefile能够从网站上下载源代码,打补丁,编译,安装.这些包包含了你需要的linux kernel,交叉编译工具,C库,应用程序等.简单的操作就能够实现生成你需要的firmware.下面是一个例子,你会发现实在太简单和方便了.

在一台安装linux的主机上(我用的是Fedora Core 4, 这个环境的搭建可以参考我的blog的文章《eCos 开发环境搭建指南-1.0.0》),编译一个Linksys WRT54G的firmware,只要下列步骤:

1. svn checkout https://svn.openwrt.org/openwrt/trunk kamikaze 下载OpenWrt的主干版本

2. cd kamikaze

3. make menuconfig 配置你需要的硬件平台,需要的软件包等

4. make  编译

OpenWrt会帮你生成开发环境,编译和安装交叉编译工具,编译linux kernel等.当然它会下载所有源码,因此第一次编译的时间会很长(以后再编译就很快了),而且你一定要确保你的linux主机始终接在Internet上.

当前OpenWrt支持下面的硬件平台:

AMCC Taishan [2.6]

AMD Alchemy AU1x00 [2.6]

Atheros [2.6]

Atmel AVR32 [2.6]

Broadcom BCM947xx/953xx [2.4]

Broadcom BCM947xx/953xx [2.6]

Intel XScale IXP4xx [2.6]

Magicbox [2.6]

Mikrotik RouterBoard 532 [2.6]

x86 [2.6]

这些硬件平台大多基于厂商提供的一些基于Linux的产品,当前OpenWrt已经支持全球的76家厂商的产品,最值得一提的就是Linksys WRT54G的无线路由器(v1-v4版本是基于linux的,v5以上是vxWorks版本的,因此如果购买时需注意版本号,要买旧货,taobao上有卖),OpenWrt开源项目最初就是基于这款的路由器,后来还衍生出DD-WRT,TOMATO等开源项目.

下图是我的编译一个截屏

43614174_1.jpg

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/528869.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

php多个表中查找数据_HeidiSQL 免费的可视化数据库管理工具

HeidiSQL是一款免费的软件,并且易于学习和使用。HeidiSQL让你从数据库内可视化的读写数据、结构体。它支持MariaDB、MySQL、Microsoft SQL、PostgreSQL等数据库。功能免费且开源内置中文在同个窗口连接多个服务支持以命令行形式连接服务连接支持SSH、SSL创建修改表、…

嵌入式linux启动根文件系统,嵌入式Linux根文件系统制作和挂载

嵌入式Linux系统由三部分组成: uboot、kernel、根文件系统, 还是这张老图这里的根文件系统可以说是包含两个部分: 一个是根,一个是文件系统那么什么是根呢?哈哈 其实根表示的就是第一个的意思下面贴张图看看整个根文件…

sqlite 查询 支持多用户同时_SQLite支持多进程同时操作数据库文件吗?

多个进程可以同时打开同一个数据库。多个进程可以同时执行SELECT。但是,只有一个进程可以随时对数据库进行更改。SQLite使用读/写锁来控制对数据库的访问。(在Win95 / 98 / ME下,缺少对读写锁的支持,而是使用概率模拟。)但请注意:…

pgsql 查询每天的最后一条_Qamp;A | 如何允许他人查询表单数据?

小金Q&A来啦!这一期小金Q&A中,小金收集到近期大家关注最多的几个问题。小金将定期为小金人们答疑解惑,帮助你每天用好小金一点。●Q&A●问:如何批量设置新数据微信提醒?答:点击右上角头像 个人…

linux 解压tar.jz,linux系统压缩文件和解压缩命令

linux系统压缩文件和解压缩命令tar命令   解包:tar zxvf FileName.tar打包:tar czvf FileName.tar DirName gz命令   解压1:gunzip FileName.gz解压2:gzip -d FileName.gz压缩:gzip FileName.tar.gz 和 .tgz解压&a…

linux fall delay 10,Cell的Rise delay和Fall delay、Rise transition和fall transition

Cell的Rise delay和Fall delay、Rise transition和Fall transition介绍:如下图所示为一个Cell的lib中关于cell_rise/cell_fall、rise_transition/fall_transition的描述:在NLDM模型的.lib中,cell_rise/cell_fall它描述的是Cell从输入到输出的…

keil流水灯c语言程序两个一起亮,我用keil c51编了一个流水灯程序,编译无误却只有第一和第二个灯亮了,最后停在第一个灯处不动...

满意答案zJ张俭2014.02.09采纳率:43% 等级:12已帮助:10469人你有几个错误:1 你的定时器没有重装,导致第一次中断和后面的中断时间不一样,第一次时间短,后面的时间一直是以65536个周期中断的.2 你在中断函数里用了 for 循环,for循环是一下子…

pyquery获取不到网页完整源代码_python动态网页爬取:爬取pexel上的图片

前言同样的,我们在写一个爬虫前要明确自己想要爬取的东西是什么,明确下载目标数据在浏览器的操作如何对于动态网页的爬取,在网页地址不变的情况下,我们首先要明确如何获取AJAX请求首先我们看看这个网站pexel打开页面后再Chrome浏览…

W ndows找不到explorer,windows找不到explorer.exe的处理教程

很多网友入手windows过程里找不到explorer.exe,很是烦恼,为了帮助大家排忧解难,这里小编就分享了windows找不到explorer.exe的处理教程,希望可以帮助到大家。windows找不到explorer.exe的处理教程1、按winr打开运行窗口&#xff0…

极光推送 android 最新,Android——快速集成极光推送-Go语言中文社区

集成极光推送1,首先肯定是注册,添加应用2,开始自动集成比手动集成简单第一步 在 build.gradledefaultConfig {multiDexEnabledtrueapplicationId rootProject.ext.cfg.applicationIdminSdkVersionrootProject.ext.cfg.minSdkVersiontargetSdk…

华为云服务怎么弄金卡会员_万科牵手华为终端云服务,共建松山湖智慧商圈

12月18日,坐落在东莞松山湖南华为旁的44000㎡的开放式商业mall——滨湖万科里正式启幕。现场华为终端云服务部还与万科南方区域商业事业部签署了战略合作协议,开启共建智慧商圈的新版图。值得一提的是,这也是华为终端云服务与万科在商业板块的…

cad2014打开文件崩溃_CAD玩的再牛,崩溃了咋办?

导读前几天,一入职新人晚上加班画完的图纸在最后一刻CAD崩溃了!好在最后在临时保存文件夹中找到了完整的图纸。这才免于通宵。CAD崩溃是我们画图中经常遇到的问题。对于CAD崩溃后的处理,相信老司机都已经游刃有余。但也有防不胜防的时候&…

android 弹窗ui,Android 弹出窗口与对话框 UI设计

左图: Android 自带的日期选择弹窗; 右图: Android 自带的时间选择弹窗.左图: Android 日历中的重复选择; 右图: Chrome 中的打印.干净简洁的布局与有趣儿又引人注目的交互让操作变得轻松而愉快, 尤其是那在时间选择器中出现的双环.同样的, 也有很多人试图在自己的应用中给他们…

vim反向删除_VIM之操纵缓冲区列表

引子昨天遇到了一个奇怪的问题,一条在Sublime里面看着十分正常的SQL语句,执行了也是正常的,导出的Insert语句也是看着没毛病的,但是在查询出来,传递到下游的时候,说多了一个乱码。WTF,然后就开始…

卸载 windows_Windows 10可能很快会自动卸载有问题的Windows更新

看起来微软已经悄悄地向Windows 10添加了一项新功能,该功能将允许操作系统自动删除导致问题的任何有问题的Windows更新。这是一个好消息,因为Windows 10最近有一些有问题的更新,其中一些阻止了Windows 10的加载。根据微软刚刚发布的一份新支持…

android /data/system/dropbox,Android导出dropbox日志

文章内容已重新排版:Android导出dropbox日志,请到该链接浏览,谢谢支持。大项目中出现anr几乎是必然事件,这里我就不再去赘述怎么分析anr日志了。但是作为分析anr重要依据的必然离不开dropbox日志。问题来了,dropbox文件…

android蓝牙串口 hc06,Android手机通过蓝牙模块HC-06连接Arduino串口输出

通过手机进行通信是可以实现很多遥控功能,虽然距离是比较短,一般是10米,但对于我这种新手做测试,比起买一个几百块的多通道遥控器成本要低很多。实验目的:用Android实现蓝牙连接通过Arduino串口输出信息这次使用的是蓝…

esrgan_港中文-商汤联合实验室:ECCV2018 PIRM-SR 超分辨率比赛冠军:ESRGAN(已开源)...

Summary:中科院和京东AI研究院提出:改进SRN人脸检测算法,目前业界最强!Author:AmusiDate:2019-02-09微信公众号:CVer原文链接:香港中文大学-商汤联合实验室:ECCV2018 PIR…

android中如何新建一个activity,《Android Activity》活动的介绍和创建

Activity 是什么Android 有四大组件:Activity、Service、Broadcast Receiver 和 Content Provider。Activity,活动,即用来承载用户界面的容器,Android 四大组件之一。我们在 APP 里面看到的页面就需要一个 Activity,页…

android qq红点,Android高仿QQ小红点功能

先给大家展示下效果图:绘制贝塞尔曲线:主要是当在一定范围内拖拽时算出固定圆和拖拽圆的外切直线以及对应的切点,就可以通过path.quadTo()来绘制二阶贝塞尔曲线了~整体思路:1、当小红点静止时,什么都不做,只…