嵌入式技术分享

Embedded Technology Sharing

嵌入式linux开发板软件平台编译及搭建

《嵌入式linux开发板软件平台编译及搭建》
uboot编译
1.确认ubuntu中交叉编译器已经搭建完成
本教程采用的交叉编译器版本
arm-2009q3.tar.bz2
arm-none-linux-gnueabi-

2.将开发板提供的iTop4412_uboot_20151119.tar.gz上传至ubuntu
路径:I:\iTOP-4412全功能版光盘资料\06_源码_ubootkernel\iTop4412_uboot_20151119.tar.gz

3.因为采用的是迅为4412全能开发板,核心板为SCP 2G,需要将CodeSign4SecureBoot_SCP文件夹一同上传至ubuntu
路径:I:\iTOP-4412全功能版光盘资料\06_源码_ubootkernel\CodeSign4SecureBoot_SCP

4.解压
tar -vxf iTop4412_uboot_20151119.tar.gz

5.进入解压的uboot目录并执行编译
cd iTop4412_uboot
./build_uboot.sh SCP_2GDDR

6.整个脚本执行完毕后,会在文件夹内生成一个u-boot-iTOP-4412.bin文件,通过文件传输软件下载到宿主机即可。

 

Linux内核编译
1.交叉编译器版本与uboot一致

2.将开发板提供的内核文件上传至ubuntu
文件路径:I:\iTOP-4412全功能版光盘资料\06_源码_ubootkernel\iTop4412_Kernel_3.0_20151120.tar.gz

3.解压
tar -vxf iTop4412_Kernel_3.0_20151120.tar.gz

4.进入解压后的文件夹
cd iTop4412_Kernel_3.0

5.对内核文件进行初始化配置,可以直接用开发板提供的配置文件的基础上进行配置更改,注意核心板的型号,这里核心板为SCP 2G
cp config_for_linux_scp_supper .config

6.完成配置后编译
make zImage

7.编译完毕,将zImage文件拷贝至宿主机即可

 

根文件系统编译
一、Android文件系统编译
1.查看ubuntu系统当前gcc是否正常安装,正常即可
gcc -v

2.将源码压缩包iTop4412_ICS_git_20151120.tar.gz上传至ubuntu
路径:I:\iTOP-4412全功能版光盘资料\07_源码_Android4.0.3文件系统\iTop4412_ICS_git_20151120.tar.gz

3.解压
tar -vxf iTop4412_ICS_git_20151120.tar.gz

4.进入解压后的目录
cd iTop4412_ICS_git

5.执行编译脚本进行编译
./build_android.sh
android文件系统第一次编译大约需要60分钟,后续再编译就很快了。

6.显示“ok success !!!”则编译成功,将out/target/product/smdk4x12/路径下的ramdisk-uboot.imgsystem.img拷贝至宿主机即可

二、最小linux根文件系统制作
1.linux_tools.tgz上传至ubuntu根目录
文件路径:I:\iTOP-4412全功能版光盘资料\02_编译器以及烧写工具\tools\linux_tools.tgz

2.解压linux_tools.tgz
sudo tar -vxf linux_tools.tgz

3.将开发板提供的busybox-1.21.1.tar.bz2上传至ubuntu
路径:F:\Linux嵌入式学习\iTOP4412开发板资料汇总 (不含光盘内容)\iTOP-4412开发板搭建编译环境所需要的工具包以及补丁包\04-编译无界面Linux文件系统需要工具包以及补丁包\busybox-1.21.1.tar.bz2

4.解压busybox压缩包
tar -vxf busybox-1.21.1.tar.bz2

5.进入解压后的目录
cd busybox-1.21.1

6.busybox进行配置
make menuconfig

7.修改交叉编译器
Busybox Settings —>
Build Options —>
(arm-none-linux-gnueabi-) Cross Compiler prefix

8.修改安装路径,即根文件系统的生成路径
Busybox Settings —>
Installation Options (“make install” behavior) —>
(../system) BusyBox installation prefix

9.编译
make

10.编译完成后,安装
make install

11.进入安装路径
cd ../system

12.在生成的根文件系统中增加相关文件夹
mkdir dev etc lib mnt proc sys tmp var

13.上传开发板提供的最小根文件系统root_20150422.tar.gzubuntu
文件路径:I:\iTOP-4412全功能版光盘资料\08_源码_QtE以及qtopia2.2.0文件系统\root_20150422.tar.gz

14.解压
tar -vxf root_20150422.tar.gz

15.进入解压后的文件夹将解压后的相关文件拷贝至生成etc目录
cd root
cp -r etc/eth0-setting ../../system/etc
cp -r etc/passwd ../../system/etc
cp -r etc/profile ../../system/etc
cp -r etc/firmware ~/iTOP4412/system/etc
cp -r etc/rc.d ../../system/etc
cp -r etc/init.d ../../system/etc
cp -r lib ../system

16.创建对应文件夹
cd ../system
cd var
mkdir lib lock log run tmp

17.创建对应的文件夹
mkdir usr/libexec
mkdir usr/local
mkdir usr/local/bin
mkdir usr/local/etc

18.拷贝移植好的
cd /home/cheng/openssh/arm-linux-ssh
cp -r usrlibexec/* ~/iTOP4412/system/usr/libexec/
cp -r usrlocalbin/* ~/iTOP4412/system/usr/local/bin/
cp -r usrlocaletc/* ~/iTOP4412/system/usr/local/etc/

19.原有的开机启动文件是带有qt的,这里不需要qt,屏蔽取消qt的开机启动,增加ssh服务开机启动项
cd /home/cheng/iTOP4412/system/etc/init.d
vi rcS
/usr/local/bin/sshd
#/bin/qtopia &
#/bin/qt4 &

20.将制作好的根文件系统打包成镜像
cd /home/cheng/iTOP4412
make_ext4fs -s -l 996147200 -a root -L linux system.img system

21.将制作好的根文件系统拷贝至宿主机

开发板镜像烧录,参考文章
TF 卡方式烧写iTOP-4412开发板文件系统》

如果文章对您有帮助,欢迎移至上方按钮打赏博主;

点赞

发表评论

电子邮件地址不会被公开。 必填项已用*标注