嵌入式linux应用开发完全手册学习笔记一
2015.3.25
星期三 晴
有两个星期没写学习日记了,找个时间把这段时间做的电子词典和ARM小项目总结一下。
下面的知识点总结,U-BOOT:参考PDF文档:嵌入式linux应用开发完全手册
当虚拟机和linux系统安装好之后,我们需要安装,配置,启动FTP,SSH,NFS服务,具体操作如下:
第一次使用apt-get来安装程序之前,先要完成两件事:
1.修改/etc/apt/sources.list,将其中注释掉的网址打开(需要root权限才能操作)
2.更新可用的程序列表 : sudo apt-get update
一,安装,配置,启动FTP服务:
1.命令:sudo apt-get install vaftpd
2.修改vsftpd的配置文件/etc/vsftpd.conf,将下面几行前的#去掉
#local_enable=YES 允许本地用户登录
#write_enable=YES 允许上传文件
3.重启FTP服务:
sudo /etc/init.d/vsftpe restart
二,安装,配置,启动ssh服务:
1.命令:sudo apt-get install openssh-server(使用默认的配置文件:/etc/ssh/sshd_config)
三,安装,配置,启动nfs服务:
1.命令:sudo agt-get install nfs-kernel-server portmap
2.他的配置文件为/etc/exports,在里面增加以下内容,以后将通过网络文件系统访问/work/nfs_root目录。
/work/nfs_root *(rw,syns,no_root_squash)
3.修改完成后重启NFS服务
sudo /etc/init.d/nfs-kernel-server restart
上面三个服务安装好之后系统每次会自动启动,如果要取消摸个服务,可以在linux的启动菜单栏
执行 System -> 系统管理 -> 网络 命令,在对话框中取消。
用下面的命令安装基本的开发环境:
sudo apt-get install build-essential
还要安装工具bison,flex,他们分别是语法,词法解析器:
sudo apt-get install bison flex
安装c函数库的man手册:
sudo apt-get install manpages-dev
安装光盘:
安装光盘前可以使用以下的命令改变/work目录的拥有者及其所属组名
sudo chown book:book /work -R
使用制作好的工具链:
刚开始学习时,用一些已经制作好的工具链,使用以下命令解压到gcc-3.4.5-glibc-2.3.6目录
cd /work/tools
tar xjf arm-linux-gcc-3.4.5-glibc-2.3.6.tar.bz2
然后在环境变量PATH中增加路径,入下所示:
export PATH=$PATH:/work/tools/gcc-3.4.5-glibc-2.3.6/bin
为了不要每次使用时都手动设置PATH,可以在/etc/environment中修改PATH的值,如下操作:
PATH="/usr/local/sbin:/nsr/local/bin:/usr/shin:/usr/bin:/sbin:/bin:/usr/games:/work/tools/gcc-3.4.5-glibc-2.3.6/bin
安装ncurses,ncurses是一个能提供功能键定义(快捷键),屏幕绘制以及基于文本终端的图形功能的动态库,如果没有他,在执行“make menuconfig”
命令的时候会出错,下面是安装命令:
cd /work/tools/
tar xzf ncurses.tar.gz
cd ncurses-5.6
./configure --with-shared --prefix=/usr
make
make install
Makefile相关描述:参考PDF文档:嵌入式linux应用开发完全手册60页,说的相当好
Windows环境下的工具:
代码阅读,编译工具Source Lnsight(创建工程,同步源文件,快捷键使用等),相关操作如下:
设置工程,指定工程数据的存放位置,设置支持的文件类型,指定源码的位置,添加,移除源文件,建立数据库等
文件传输工具:Cuteftp, 是一款FTP客户端软件,只要在Linux上安装,启动了FTP服务,就可以使用Cuteftp在Windows与Linux之间进行文件传输
嵌入式linux应用开发完全手册78页
远程登录工具:SecureCRT
TFTP服务器软件:Tftpd32
Linux环境下的工具,命令:
代码于都,编辑工具:KScope(类似:Source Lnsight)
远程登录工具:C-kermit
查找命令:grep,find
cd --------
prep “hello” kernel -R 在当前目录下的kernel目录下递归查找hello,(-R表示递归查找子目录)
fine kernel -name "*hello*"
其他命令:tar,diff,patch 嵌入式linux应用开发完全手册88页
压缩:
tar czf dirA.tar.gz dirA
tar cjf dirA.tar.bz2 dirA
解压:
tar xzf dirA.tar.gz -C <dir> 解压到<dir>目录,不加-C表示解压到当前目录
制作补丁:linux-2.6.22.6_ok.diff(比较两个文件,将修改过的内容输出)
diff -urNwB linux-2.6.22.6 linux-2.6.22.6_ok > linux-2.6.22.6_ok.diff
打补丁:
patch -p1 < ../linux-2.6.22.6_ok.diff (-p1表示忽略第一个/之前的目录)
***************************************************************************************************************************************************************
***************************************************************************************************************************************************************
***************************************************************************************************************************************************************
***************************************************************************************************************************************************************
嵌入式linux应用开发完全手册学习笔记一的更多相关文章
- 嵌入式Linux应用开发完全手册读书笔记——常用的命令
嵌入式开发中常用的命令 grep命令 用法:grep [option] PATTERN [FILE...] 例如: 在内核目录下查找包含"request_irq"字样的文件 gre ...
- 嵌入式Linux应用开发完全手册读书笔记——交叉编译工具选项说明
交叉编译工具选项说明 arm-linux-gcc 一个c/c++文件要变成可执行文件需要4步:预处理 -> 编译 -> 汇编 -> 链接: 在使用arm-linux-gcc时的常用选 ...
- 嵌入式Linux应用开发完全手册之环境搭建
@ 目录 0.下载源配置 1.电脑BIOS启动虚拟化 2.linux网卡查看与IP设置 3.windows NAT虚拟网络配置 4.修改 Ubuntu 的 mountd 端口 5.vim设置 6.Mo ...
- iPhone App开发实战手册学习笔记(9)之设计IOS App的目标
1 前言 如果我们要做一个属于自己的App需要达到那些目标呢,今天就来介绍一下. 2 详述 2.1 关注用户及其需求 你的主要目标永远都是在设计方案之前先想好用户用例.有些开发人员喜欢编写用户故事来确 ...
- 驱动开发学习笔记. 0.06 嵌入式linux视频开发之预备知识
驱动开发读书笔记. 0.06 嵌入式linux视频开发之预备知识 由于毕业设计选择了嵌入式linux视频开发相关的项目,于是找了相关的资料,下面是一下预备知识 UVC : UVC,全称为:USB v ...
- 嵌入式Linux驱动开发日记
嵌入式Linux驱动开发日记 主机硬件环境 开发机:虚拟机Ubuntu12.04 内存: 1G 硬盘:80GB 目标板硬件环境 CPU: SP5V210 (开发板:QT210) SDRAM: 512M ...
- 如何使用eclipse进行嵌入式Linux的开发
如何使用eclipse进行嵌入式Linux的开发 作者:曾宏安,华清远见嵌入式学院高级讲师. 如何使用eclipse进行嵌入式Linux的开发 习惯了在windows环境下开发的程序员在转到Linux ...
- linux内核分析第四周学习笔记
linux内核分析第四周学习笔记 标签(空格分隔): 20135328陈都 陈都 原创作品转载请注明出处 <Linux内核分析>MOOC课程http://mooc.study.163.co ...
- Linux内核分析第二周学习笔记
linux内核分析第二周学习笔记 标签(空格分隔): 20135328陈都 陈都 原创作品转载请注明出处 <Linux内核分析>MOOC课程http://mooc.study.163.co ...
随机推荐
- JS去掉数组的重复项
自己知道思路怎么去,但是就是自己不会写,在网上找了一些来看,有些还是没有怎么看明白.学习到了这么一种方法 var a=['ss','dd','ss','cc','dd',1,2,1] var b={} ...
- Codeforces Round #374 (div.2)遗憾题合集
C.Journey 读错题目了...不是无向图,结果建错图了(喵第4样例是变成无向就会有环的那种图) 并且这题因为要求路径点尽可能多 其实可以规约为限定路径长的拓扑排序,不一定要用最短路做 #prag ...
- MySQL数据库一个字段对应多个值得模糊查询
当一个字段想模糊查询出多个字段的时候,正常情况下一般会这么作 select * from a where name like 'a%' or name like 'b%' ....or ...; 但是 ...
- vs2010打包(带数据库)图文详解
最近刚刚打包发布了用VS2010开发的一个收费系统,借此讲一讲打包过程,供大家参考. 首先打开已经完成的工程,如图: 下面开始制作安装程序包. 第一步:[文件]——[新建]——[项目]——安装项目. ...
- 程序设计入门—Java语言 第五周编程题 2井字棋(5分)
2 井字棋(5分) 题目内容: 嗯,就是视频里说的那个井字棋.视频里说了它的基本思路,现在,需要你把它全部实现出来啦. 你的程序先要读入一个整数n,范围是[3,100],这表示井字棋棋盘的边长.比如n ...
- 初试 Matlab 之去除水印
这几天很痛苦地去学习了下用 Matlab 来处理图像,其实那些算法我觉得还不算很难理解,可是 Matlab 这种反人类的语法(可能对于我来说是这样吧,毕竟熟悉了 C++ / Java 的语法一时间很难 ...
- html之meta详解
<!DOCTYPE html> <!-- 使用 HTML5 doctype,不区分大小写 --> <html lang="zh-cmn-Hans"&g ...
- JQuery text()、html() 以及 val()
获得内容 - text().html() 以及 val() 三个简单实用的用于 DOM 操作的 jQuery 方法: text() - 设置或返回所选元素的文本内容 html() - 设置或返回所选元 ...
- MongoDB:实体对象(javabean)转DBObject
代码仅供练习(反射,泛型): package utils; import java.lang.reflect.Field; import com.mongodb.BasicDBObject; impo ...
- js时间格式转换的几种方法
公司项目需要获取时间并且转换格式,之前没有实现过但读过源码,新来的小哥给我讲了下细节.算是学到了..... function getLocalTime(){ var now=new Date(); v ...