嵌入式交叉编译开发环境的搭建步骤(arm-linux)
2012-07-05 18:42
871 查看
嵌入式交叉编译开发环境的搭建步骤(arm-linux)
进入公司领到一台新的计算机后第一件要做的事就是交叉编译开发环境的搭建,因为步骤较多,又较容易犯错误,特整理出来供大家参考。
嵌入式交叉编译开发环境的搭建可以分为三个步骤:一是基本服务(NFS、TFTP、minicom)的配置,二是交叉编译工具(gcc、gdb、make)的搭建,三是运行环境(kernel、rootfs)的搭建。
一、基本服务的配置
1、NFS(用于主机与开发板共享文件)
1)、下载安装nfs
sudo apt-get install nfs-kernel-server
2)、打开配置文件
sudo vi /etc/exports 应先创建exports文件并改变其权限为777
添加 /home/gongzuo/rootfs *(rw,sync,no_root_squash,no_subtree_check)
/home/gongzuo/rootfs 是要共享的目录
3)重启portmap
sudo /etc/init.d/portmap restart
4)重启nfs
sudo /etc/init.d/nfs-kernel-server restart
5)测试
showmount -e <---显示共享出的目录
sudo mount -t nfs localhostIP:/home/gongzuo/rootfs /mnt <--这样就把共享目录挂到了本机的/mnt目录下
sudo umount /mnt 取消挂载
mount -t nfs -o tcp -o nolock localhostIP:/home/gongzuo/rootfs /mnt <--这样就把共享目录挂到了开发板的/mnt目录下
2、TFTP(用于开发板从主机下载文件)
1)、下载安装tftp
sudo apt-get install tftpd xinetd
2)、打开配置文件
sudo vi /etc/xinetd.d/tftp 先创建tftp文件并改变其权限为777
添加
service tftp
{
socket_type =dgram
protocol =udp
wait =yes
user =root
server =/usr/sbin/in.tftpd
server_args =/tftpboot
server_args =/tftpboot/
disable = no
per_source = 11
cps = 100 2
flags =IPv4
}
3)、创建文件/tftpboot并修改权限
sudo mkdir /tftpboot
sudo chmod 777 /tftpboot
4)、重启tftp服务
sudo /etc/init.d/xinetd restart
5)、测试
输入 sudo netstat -apn | grep ":69"
则应输出:输出:udp 0 0 0.0.0.0:69 0.0.0.0:* 3770/xinetd
3、minicom(用于串口通信)
1)、下载安装minicom
sudo apt-get install minicom
sudo apt-get install lrzsz(现在的版本这一步基本都包含在第一步中了)
2)、配置minicom
sudo minicom -s
如果使用的主机接口为USB转串口则Serial Device : /dev/ttyUSB0
否则Serial Device : /dev/ttyS0
| B - Lockfile Location : /var/lock |
| C - Callin Program : |
| D - Callout Program -: |
| E - Bps/Par/Bits : 115200 8N1|
| F - Hardware Flow Control : No |
| G - Software Flow Control : No |
Save setup as dfl
Exit from Minicom
二、交叉编译工具的搭建
做开发时同组同事间的开发工具版本要一致,因此交叉编译工具应从同组同事那里拷贝,假若你已经拷贝了一份交叉编译工具放在了/home/gongzuo/embed/tools/bin/目录下,则只需完成如下步骤即可:
1、在当前工作目录下(/home/gognzuo/)打开.bashrc
vi .bashrc
2、添加代码:export PATH=$PATH:/home/akaedu/crosstool/tools/bin/
,并把以前的export PATH代码注释掉即可
3、重启shell后,新的交叉编译工具就生效了,可以通过arm-linux-gcc -v 查看当前版本信息。
三、运行环境的搭建(针对s3c2440开发板)
运行环境的搭建主要包括内核文件的***,根文件系统的***和内核启动参数的配置三个方面。
1、内核文件的***
如果有适合的编译好的内核文件则可以下载烧写到开发板上,步骤如下:
1)、将内核文件(zImage)拷贝到/tftpboot目录下
2)、下载zImage到开发板上
tftp 0x30008000 zImage
3)、擦除nand的kernel区
nand erase kernel
(可以通过mtdparts命令查看nand分区,如果nand没有分区则应该先分区,执行mtdparts default和saveenv完成分区保存)
4)、烧写
nand write 0x30008000 kernel 0x200000
2、根文件系统的***
如果有适合的编译好的根文件则可以下载烧写到开发板上,步骤如下:
1)、将根文件(rootfs.cramfs)拷贝到/tftpboot目录下
2)、下载rootfs.cramfs到开发板上
tftp 0x30800000 rootfs.cramfs
3)、擦除nand的ext2区
nand erase ext2
4)、烧写
nand write 0x30800000 ext2 0x1000000
3、内核启动参数的配置
set bootcmd nand read 0x30008000 kernel 0x200000\; myboot 0x30008000
set bootargs noinitrd console=ttySAC0,115200
set bootmode nand(或nfs)(设置根文件从什么地方加载)
set init /linuxrc
set root /dev/mtdblock2
saveenv
四、裁剪内核
五、***根文件系统
进入公司领到一台新的计算机后第一件要做的事就是交叉编译开发环境的搭建,因为步骤较多,又较容易犯错误,特整理出来供大家参考。
嵌入式交叉编译开发环境的搭建可以分为三个步骤:一是基本服务(NFS、TFTP、minicom)的配置,二是交叉编译工具(gcc、gdb、make)的搭建,三是运行环境(kernel、rootfs)的搭建。
一、基本服务的配置
1、NFS(用于主机与开发板共享文件)
1)、下载安装nfs
sudo apt-get install nfs-kernel-server
2)、打开配置文件
sudo vi /etc/exports 应先创建exports文件并改变其权限为777
添加 /home/gongzuo/rootfs *(rw,sync,no_root_squash,no_subtree_check)
/home/gongzuo/rootfs 是要共享的目录
3)重启portmap
sudo /etc/init.d/portmap restart
4)重启nfs
sudo /etc/init.d/nfs-kernel-server restart
5)测试
showmount -e <---显示共享出的目录
sudo mount -t nfs localhostIP:/home/gongzuo/rootfs /mnt <--这样就把共享目录挂到了本机的/mnt目录下
sudo umount /mnt 取消挂载
mount -t nfs -o tcp -o nolock localhostIP:/home/gongzuo/rootfs /mnt <--这样就把共享目录挂到了开发板的/mnt目录下
2、TFTP(用于开发板从主机下载文件)
1)、下载安装tftp
sudo apt-get install tftpd xinetd
2)、打开配置文件
sudo vi /etc/xinetd.d/tftp 先创建tftp文件并改变其权限为777
添加
service tftp
{
socket_type =dgram
protocol =udp
wait =yes
user =root
server =/usr/sbin/in.tftpd
server_args =/tftpboot
server_args =/tftpboot/
disable = no
per_source = 11
cps = 100 2
flags =IPv4
}
3)、创建文件/tftpboot并修改权限
sudo mkdir /tftpboot
sudo chmod 777 /tftpboot
4)、重启tftp服务
sudo /etc/init.d/xinetd restart
5)、测试
输入 sudo netstat -apn | grep ":69"
则应输出:输出:udp 0 0 0.0.0.0:69 0.0.0.0:* 3770/xinetd
3、minicom(用于串口通信)
1)、下载安装minicom
sudo apt-get install minicom
sudo apt-get install lrzsz(现在的版本这一步基本都包含在第一步中了)
2)、配置minicom
sudo minicom -s
如果使用的主机接口为USB转串口则Serial Device : /dev/ttyUSB0
否则Serial Device : /dev/ttyS0
| B - Lockfile Location : /var/lock |
| C - Callin Program : |
| D - Callout Program -: |
| E - Bps/Par/Bits : 115200 8N1|
| F - Hardware Flow Control : No |
| G - Software Flow Control : No |
Save setup as dfl
Exit from Minicom
二、交叉编译工具的搭建
做开发时同组同事间的开发工具版本要一致,因此交叉编译工具应从同组同事那里拷贝,假若你已经拷贝了一份交叉编译工具放在了/home/gongzuo/embed/tools/bin/目录下,则只需完成如下步骤即可:
1、在当前工作目录下(/home/gognzuo/)打开.bashrc
vi .bashrc
2、添加代码:export PATH=$PATH:/home/akaedu/crosstool/tools/bin/
,并把以前的export PATH代码注释掉即可
3、重启shell后,新的交叉编译工具就生效了,可以通过arm-linux-gcc -v 查看当前版本信息。
三、运行环境的搭建(针对s3c2440开发板)
运行环境的搭建主要包括内核文件的***,根文件系统的***和内核启动参数的配置三个方面。
1、内核文件的***
如果有适合的编译好的内核文件则可以下载烧写到开发板上,步骤如下:
1)、将内核文件(zImage)拷贝到/tftpboot目录下
2)、下载zImage到开发板上
tftp 0x30008000 zImage
3)、擦除nand的kernel区
nand erase kernel
(可以通过mtdparts命令查看nand分区,如果nand没有分区则应该先分区,执行mtdparts default和saveenv完成分区保存)
4)、烧写
nand write 0x30008000 kernel 0x200000
2、根文件系统的***
如果有适合的编译好的根文件则可以下载烧写到开发板上,步骤如下:
1)、将根文件(rootfs.cramfs)拷贝到/tftpboot目录下
2)、下载rootfs.cramfs到开发板上
tftp 0x30800000 rootfs.cramfs
3)、擦除nand的ext2区
nand erase ext2
4)、烧写
nand write 0x30800000 ext2 0x1000000
3、内核启动参数的配置
set bootcmd nand read 0x30008000 kernel 0x200000\; myboot 0x30008000
set bootargs noinitrd console=ttySAC0,115200
set bootmode nand(或nfs)(设置根文件从什么地方加载)
set init /linuxrc
set root /dev/mtdblock2
saveenv
四、裁剪内核
五、***根文件系统
相关文章推荐
- Ubuntu 16.04[64bit]嵌入式交叉编译环境arm-linux-gcc搭建过程图解
- 64位Ubuntu 16.04搭建嵌入式交叉编译环境arm-linux-gcc过程图解
- Ubuntu 12.04嵌入式交叉编译环境arm-linux-gcc搭建过程图解
- Ubuntu 12.04嵌入式交叉编译环境arm-linux-gcc搭建过程图解
- Ubuntu 12.04嵌入式交叉编译环境arm-linux-gcc搭建过程
- ok6410[001] Ubuntu 16.04[64bit]嵌入式交叉编译环境arm-linux-gcc搭建过程图解
- 搭建arm-linux-gcc交叉编译工具链环境(Android原生(JNI)开发环境搭建)
- Ubuntu 12.04嵌入式交叉编译环境arm-linux-gcc搭建过程图解
- 64位Ubuntu 16.01搭建嵌入式交叉编译环境arm-linux-gcc过程图解
- Ubuntu 16.04[64bit]嵌入式交叉编译环境arm-linux-gcc搭建过程图解
- ubuntu12.04 嵌入式交叉编译环境arm-linux-gcc搭建过程图解
- Ubuntu 16.04(64bit)嵌入式交叉编译环境搭建arm-linux-gcc使用
- Ubuntu 12.04嵌入式交叉编译环境arm-linux-gcc搭建过程图解
- Linux下搭建ARM交叉编译环境的步骤
- Ubuntu 14.04 LTS嵌入式交叉编译环境arm-linux-gcc搭建过程图解
- 【Linux学习】Ubuntu下嵌入式交叉编译环境arm-linux-gcc搭建
- Ubuntu开发环境搭建(2)【安装arm-linux-gcc-4.4.3交叉编译环境】
- Ubuntu12.04嵌入式交叉编译环境arm-linux-gcc搭建过程,图解
- Ubuntu 16.04[64bit]嵌入式交叉编译环境arm-linux-gcc搭建过程图解
- Ubuntu 12.04嵌入式交叉编译环境arm-linux-gcc搭建过程图解