4924|1

1

帖子

0

TA的资源

一粒金砂(初级)

楼主
 

开发环境搭建 [复制链接]

开发环境搭建
首先说明我使用的学习环境,因为一开始是按照Mini2440的手册和光盘搭建的系统,后来看韦东山老师的视频,又按视频搭建了环境,所以虚拟机还是用的 Fedora.
硬件:Micro2440
虚拟机:VMware6.5 + Fedora9
交叉编译器:arm-linux-gcc-3.4.5-glibc-2.3.6
开发板的系统:linux2.6.22.6内核(韦东山光盘)
关于这个笔记的规划:
打算用这个笔记记录自己的Linux学习记录,遇到的问题,解决的方法,自己的理解。
第一部分为Linux驱动开发入门,主要包括LED驱动、按键驱动、异常处理、中断处理、poll机制、异步通知、同步互斥阻塞,主要就是韦东山老师视频的第一期内容。
今天这篇笔记主要是环境搭建中遇到的一些问题。
安装gcc编译器
a.复制 arm-linux-gcc-3.4.5-glibc-2.3.6.tar.bz2 到某个目录
b.解压 tar xjf arm-linux-gcc-3.4.5-glibc-2.3.6.tar.bz2
c.把编译器路径加入系统环境变量,运行命令  #gedit /root/.bashrc 
d.编辑/root/.bashrc 文件,在最后一行添加(或修改)为 export PATH=$PATH:/某个目录/gcc-3.4.5-glibc-2.3.6/bin 
e.退出root,重新登录root即可(不用重启)
编译uboot
$ tar xjf u-boot-1.1.6.tar.bz2 
$ cd u-boot-1.1.6 
$ patch -p1 < ../u-boot-1.1.6_jz2440.patch 
$ make 100ask24x0_config 
$ make 
修改编译内核
tar xjf linux-2.6.22.6.tar.bz2
cd linux-2.6.22.6
patch -p1 < ../linux-2.6.22.6_jz2440.patch
把 mini2440源码\drivers_and_test\10th_lcd\4th\lcd.c复制到内核driver/video,并修改driver/video/Makefile
obj-$(CONFIG_FB_S3C2410) += lcd.o # s3c2410fb.o
把 mini2440源码\drivers_and_test\DM900 网卡驱动复制到内核 对应目录,由于对应Makefile已经修改,故无需修改
内核根目录 cp config_厂家 .config
内核根目录下执行 make uImage
解决不生成uImage问题
“mkimage” command not found – U-Boot images will not be built
在编译的uboot目录下tools目录下,拷贝mkimage文件到gcc编译器的bin目录/gcc-3.4.5-glibc-2.3.6/bin
烧录uboot
Micro2440设置到nor flash启动,使用norflash中的superVivi 将uboot烧录到NandFlash
设置NandFlash启动,按PC空格键进入uboot
烧录内核
在uboot下烧录编译得到的uImage文件
烧录根文件系统,主光盘 bin目录下的fs_qtopia.yaffs2 文件
网络文件系统启动
step1.在虚拟机创建目标 根文件系统
tar xjf fs_qtopia.tar.bz2
step2.在虚拟机中配置网络文件系统NFS服务
设置共享目录
运行命令 #gedit /etc/exports 
编辑 nfs 服务的配置文件(注意:第一次打开时该文件是空的),添加以下内容: 
/opt/FriendlyARM/mini2440/root_qtopia    *(rw,sync,no_root_squash) 
其中: 
/opt/FriendlyARM/mini2440/root_qtopia 表示 nfs 共享目录,它可以作为开发板的根文件系统通过 nfs 挂接;所以把这个路径改为你要挂在的根文件系统目录路径 
*  表示所有的客户机都可以挂接此目录 
rw  表示挂接此目录的客户机对该目录有读写的权力 
no_root_squash  表示允许挂接此目录的客户机享有该主机的 root 身份 
通过命令启动和停止 nfs 服务 
在命令行下运行: #/etc/init.d/nfs start 
可以输入以下命令检验 nfs 该服务是否启动
# mount -t nfs localhost:/opt/weidongshan/fs_qtopia /mnt/
挂载成功即可进入该目录 cd /mnt,能进入该目录即说明挂接成功。
停止 nfs 服务: #/etc/init.d/nfs stop 
由于我的虚拟机从来都不关机,所以我也不用设置nfs服务开机启动,反正用于是开着的。
step3.设置开发发板uboot中的系统启动参数
重启系统,按电脑的空格键,让系统停在uboot中
[s] Set the boot parameters
[s] Set parameter 
输入参数 Name:bootargs
输入参数 Value:noinitrd console=ttySAC0 root=/dev/nfs init=/linuxrc nfsroot=192.168.1.180:/opt/weidongshan/fs_qtopia ip=192.168.1.17:192.168.1.180:192.168.1.1:255.255.255.0:mini2440:eth0:
退出设置
[]     把参数写到Flash,这样每次开机内核都会自动挂接NFS启动,如果NFS不存在,则会挂载本地根文件系统。
[b] reboot the system

最新回复

前排围观  详情 回复 发表于 2015-5-9 17:56
点赞 关注

回复
举报

5979

帖子

8

TA的资源

版主

沙发
 
前排围观
 
个人签名生活就是油盐酱醋再加一点糖,快活就是一天到晚乐呵呵的忙
===================================
做一个简单的人,踏实而务实,不沉溺幻想,不庸人自扰
 

回复
您需要登录后才可以回帖 登录 | 注册

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/10 下一条

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表