您的位置:首页 > 其它

基于Ubuntu10.10 开发环境部署 2.6 内核

2011-07-19 12:42 477 查看
基于Ubuntu10.10开发环境部署

一.Ubuntu部署

1.开发环境

Ubuntu10.10
KernelLinux 2.6.35

2.由于Ubuntu10.10vi开发存在按键错误。需要安装完整版本vi

sudoapt-get install vim
配置当前用户工作目录下.vimrc
syntaxon

settabstop=4

setsofttabstop=4

setshiftwidth=4

setcindent

setnu

setautoindent

setcindent

let&termencoding=&encoding

setfileencodings=utf-8,gbk,ucs-bom,cp936
打开vi语法高亮,自动缩进等其他开发环境特性
3.由于Ubuntu10.10gedit存在中文乱码问题
复制以下命令到终端中,然后回车即可:
gconftool-2--set --type=list --list-type=string/apps/gedit-2/preferences/encodings/auto_detected"[UTF-8,CURRENT,GB18030,BIG5-HKSCS,UTF-16]"
如遇到不可识别的文件,可能是存在编码格式不识别,需要添加相对应的编码
4.makemenuconfig存在Ncurses
libraries
库问题
sudoapt-get install ncurses-dev

5.arm-linux-交叉编译工具
arm-linux-gcc4.2.2必须将交叉编译器 放在/usr/local全名/usr/local/arm/4.2.2-eabi/
sudotar xvf arm.tar -C /usr/local/
添加$PATH--> sudo vi /etc/profile/在最后添加
PATH=$PATH:/usr/local/arm/4.2.2-eabi/usr/bin
source/etc/profile让profile生效

#apt-get install uboot-mkimage 安装uboot image 制作工具



6.kateIDE环境配置
1.安装 kate
sudoapt-get install kate
2.配置kateSettings->
Configure-kate
1.kate 带语法高亮和自动补全功能
2.安装插件SymbolViewer
3.TabBar
4.FIlesystem browser
5.Terminaltool view
6.Findin files tool view
7.BuildPlugin 在项目目录下设置makefile 。编辑好后按Alt+R 进行编译
8.CtagsPlugin 安装好ctags 在内核目录在运行 ctags-R
* 生成tags 索引文件通过
插件配置,可以使得kate 支持内核代码的索引功能

特别注意 kate 是以session 管理配置和项目的,如果修改了配置需要做为默认配置则
选择Sessions->SaveSessions
As Default

9.外观->显示行号,显示缩进行,突出显示括号内字段
编辑-》自动括号,常规-》插入空格而不是跳格,缩进-》默认缩进模式 -》CStyle
,取消常规->制表符加亮
9.最后汉化系统
,默认 系统中的 语言支持 ,kate 也会被汉化
10.安装 foxitreader
11.sudoapt-get
install konsole 安装 console 终端

6.配置NFS PC机服务端
1.安装nfs服务
sudoapt-get install nfs-kernel-server
修改nfs配置文件
vi/etc/exports
添加
/armnfs*(sync,rw,no_root_squash,no_subtree_check)!!重要
2.在根目录下建立nfs目录
sudomkdir /armnfs
sudochmod 777 -R /armnfs
3.启动测试
/etc/init.d/nfs-kernel-serverrestart
sudomount 127.0.0.1:/armnfs /mnt

7.配置tftp服务器

1 安装

root@ubuntu:/#apt-get install tftpd-hpa

正在读取软件包列表... 完成

正在分析软件包的依赖关系树

Reading state information...
完成

下列新软件包将被安装:

tftpd-hpa

共升级了 0 个软件包,新安装了1
个软件包,要卸载 0个软件包,有
0 个软件未被升级。

需要下载 34.0kB 的软件包。

解压缩后会消耗掉 152kB的额外空间。

获取:1
http://Ubuntu.cn99.comhardy/main tftpd-hpa 0.43-1.1ubuntu1 [34.0kB]

下载 34.0kB,耗时
5s(5921B/s)

正在预设定软件包 ...

选中了曾被取消选择的软件包 tftpd-hpa。

(正在读取数据库
...系统当前总共安装有 112536个文件和目录。)

正在解压缩 tftpd-hpa (从.../tftpd-hpa_0.43-1.1ubuntu1_i386.deb)...

正在设置 tftpd-hpa(0.43-1.1ubuntu1) ...

root@ubuntu:/#

2 设置tftpd

root@ubuntu:~# nano/etc/default/tftpd-hpa

#Defaults for tftpd-hpa

RUN_DAEMON="yes"

#上面这句表示启动守护进程,tftpd工作

OPTIONS="-l -s/var/lib/tftpboot"

#上面这句表示tftp客户端能取得的文件所存放的位置

我的设置为:

TFTP_USERNAME="tftp"

TFTP_DIRECTORY="/tftpboot"

TFTP_ADDRESS="192.168.1.243:69"

TFTP_OPTIONS="--secure"

3 启动服务

root@ubuntu:/#/etc/init.d/tftpd-hpa start

Starting HPA's tftpd: in.tftpd.

root@ubuntu:/# ps aux|grep tftp

root 26853 0.0 0.1 2196 288 ? Ss17:26 0:00 /usr/sbin/in.tftpd -l -s /var/lib/tftpboot

root 26862 0.0 0.2 3180 748 pts/1R+ 17:27 0:00 grep tftp

#

1.安装
sudoapt-get install tftp tftpd xinetd
2、建立配置文件

cd/etc/xinetd.d/

sudo vim tftp

输入

service tftp

{

protocol = udp

port = 69

socket_type = dgram

wait = yes

user = nobody

server = /usr/sbin/in.tftpd

server_args = /tftpboot

disable = no

}

存盘退出

3、建立tftp服务文件目录

sudomkdir /tftpboot

sudo chmod 777 /tftpboot -R

4、从新启动服务

sudo/etc/init.d/xinetd restart

安装完成!

测试:

tftp192.168.2.75

tftp> put hello.c

Sent 1018 bytes in 0.0seconds

tftp> get hello.c

Received 1018 bytes in 0.1 seconds

二.内核下载和ppcboot使用
①内核下载
第一次烧写必须使用jtag,连接好硬件
cd/HHARM2410-R3/images
./flash进入烧写程序
键入 1选择flash的类型,再键入0选择烧写flash中的位置
让后jtag会开始烧写大概要10分钟
注意:如果在已经下载ppcboot上用jtag烧写flash
必须对flash扇区进行解锁
protectoff all
才能继续通过jtag进行烧写

②ppcboot使用和内核启动
1.RunARMLinux:

setenvserverip 192.168.2.56 //设置服务器ip
saveenv
tftp30008000 zImage; //下载内核到0x30008000
tftp30800000 ramdisk.image.gz; //下载ramdisk到0x30800000
go30008000 //执行0x30008000

2.Burnkernel and ramdisk into flash:

tftp 30008000 zImage
fl40000 30008000 f0000 //fl将0x30008000处f000长度的内存内容烧写到flash0x40000
tftp30800000 ramdisk.image.gz
fl140000 30800000 2b0000

3.Burnother file system into flash:

tftp30008000 jffs2.img
fl800000 30008000 xxxx

tftp30008000 cramfs.img
fl540000 30008000 xxxx

4.Burnppcboot into flash:
tftp30008000 ppcboot.bin
protectoff 1:0
fl 030008000 20000

③ppcboot支持命令

Printenv 打印环境变量。

Setenv 设置新的变量

Saveenv 保存变量

Loadb 通过串口Kermit协议下载二进制数据。

Tftp 通过网络下载程序,需要先设置好网络配置

Md 显示内存区的内容。

Mm 修改内存,地址自动递增。

Nm 修改内存,地址不自动递增。

Mw 用模型填充内存

Cp 拷贝一块内存到另一块

Cmp 比较两块内存区

Protect 写保护操作

Erase 擦除扇区。

bootcmd 保留的环境变量,也是一种脚本

Go 执行内存中的二进制代码,一个简单的跳转到指定地址

Bootm 执行内存中的二进制代码

Bootp 通过网络启动,需要提前设置好硬件地址。

? 得到所有命令列表

ping 注:只能开发板PING别的机器
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: