歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux基礎 >> Linux教程 >> 嵌入式Linux開發環境搭建

嵌入式Linux開發環境搭建

日期:2017/2/28 14:28:46   编辑:Linux教程

整理下嵌入式Linux開發環境搭建過程筆記。

嵌入式Linux下使用BusyBox的crond服務的方法 http://www.linuxidc.com/Linux/2014-02/97369.htm

一、制作u-boot.bin文件:
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

U-Boot源代碼下載地址 http://www.linuxidc.com/Linux/2011-07/38897.htm

二、制作適用於4.3寸屏幕的uImage文件:
tar xjf linux-2.6.22.6.tar.bz2
cd linux-2.6.22.6
patch -p1 < ../linux-2.6.22.6_jz2440.patch
mv ../4.2LCD_mach-smdk2440.c arch/arm/mach-s3c2440/mach-smdk2440.c
cp config_ok .config

make uImage


三、構建根文件系統
1、移植Busybox
tar xjf busybox-1.7.0.tar.bz2
cd busybox-1.7.0
make menuconfig(配置)
vi Makefiel(修改Makefile ARCH ?= arm CROSS_COMPILE ?= arm-linux-)
make(編譯)
make CONFIG_PREFIX=dir_path install(安裝)
2、使用glibc庫
mkdir -p /work/nfs_root/rootfs/lib
cd /work/tools/gcc-3.4.5-glibc-2.3.6/arm-linux/lib
cp *.so* /work/nfs_root/rootfs/lib -d
3、構建etc目錄

a、etc/inittab文件內容如下:
# /etc/inittab
console::askfirst:-/bin/sh
::sysinit:/etc/init.d/rcS
tty1::askfirst:-/bin/sh
::ctrlaltdel:/sbin/reboot
b、etc/init.d/rcS文件內容如下:
#!/bin/sh
mount -a
mkdir /dev/pts
mount -t devpts devpts /dev/pts
echo /sbin/mdev > /proc/sys/kernel/hotplug
mdev -s
c、etc/fstab文件內容如下:
#device mount-point type options dump fsck order
proc /proc proc defaults 0 0
tmpfs /tmp tmpfs defaults 0 0
sysfs /sys sysfs defaults 0 0
tmpfs /dev tmpfs defaults 0 0

4、構建dev目錄
sudo mknod console c 5 1
sudo mknod null c 1 3
sudo mknod ttySAC0 c 204 64
sudo mknod mtdblock0 b 31 0
sudo mknod mtdblock1 b 31 1
sudo mknod mtdblock2 b 31 2

5、構建其他目錄
mkdir proc mnt tmp sys root

四、制作yaffs文件系統映像文件
cd /work/nfs_root
mkyaffsimage rootfs rootfs.yaffs
五、制作jffs2文件映像文件
cd /work/nfs_root
mkfs.jffs2 -n s 2048 -e 128KiB -d rootfs -o rootfs.jffs2

六、通過設置u-boot的bootargs參數,選擇根文件系統啟動方式:
1、使其能夠通過nfs啟動
set bootargs noinitrd root=/dev/nfs nfsroot=59.73.166.32:/work/nfs_root/first_fs ip=59.73.166.31:59.73.166.32:59.73.166.1:255.255.255.0::eth0:off console=ttySAC0 init=/linuxrc
stdin=serial
saveenv
2、從塊設備啟動
set bootargs noinitrd root=/dev/mtdblock3 rootfstype=jffs2 init=/linuxrc console=ttySAC0
saveenv

Copyright © Linux教程網 All Rights Reserved