说明:此文基于上一篇博文:Linux系统编程之最小 linux 文件系统的制作及烧写_linux系统制作-优快云博客
即,先要完成上一篇博文的一到四步的操作(四、安装打包软件和编译)
一、编写应用程序
二、交叉编译 hello world
arm-none-linux-gnueabi-gcc -o helloworld helloworld.c -static
说明:“arm-none-linux-gnueabi-gcc ”表示使用 arm 编译器,对应 iTop4412 开发板;
“-static”表示将库也编译进去。


三、将 helloworld 编译进文件系统
cp -r linsyscode/helloworld/helloworld minilinux/system/bin/

四、重新编译system镜像
make_ext4fs -s -l 314572800 -a root -L linux system.img system

从而生成 system.img 文件系统镜像,编译成功后重新烧写 “ system.img ” 文件系统。
五、烧写重新编译生成的system镜像
参照在线博文教程,完成上步生成的system.img的烧写:Linux系统编程之最小 linux 文件系统的制作及烧写_linux系统制作-优快云博客
如果此步操作在上述博文基础上,则只需烧写重新编译的system.img镜像即可。
打开超级终端,连接成功后,输入 fastboot

连接好OTG线,驱动成功ADB,打开命令提示符,在cmd.exe命令端输入命令:
fastboot.exe flash system system.img
再输入命令:
fastboot -w

最后重启开发板。
六、开发板上最小Linux系统运行应用程序
七、U盘运行应用程序(补充内容)
本节介绍如何利用 U 盘将可执行程序拷贝到开发板并且在开发板上运行。
回车,如下图所示,

如下图,可以识别U盘,并且知道盘符号为sda1。

如果文件系统第一次启动的时候没有/mnt/udisk 目录,所以需要使用命令 “ mkdir /mnt/udisk ” 新建。如下图。

然后加载 u 盘,插入 u 盘的时候,被识别为 sda1,使用命令 “ mount /dev/sda1 /mnt/udisk ” 加载 u 盘, 如下图所示。

这个时候可以直接在 U 盘中运行,如下图所示,使用命令 “ chmod 777 /mnt/udisk/helloworld ”修改权限。

然后使用命令 “ ./mnt/udisk/helloworld ” 运行 helloworld 程序,如下图所示。

本文详细介绍了在Ubuntu环境下,从创建目录、编写并交叉编译HelloWorld程序、将程序编译进文件系统,到制作最小Linux系统镜像和在开发板及U盘上运行应用程序的过程。

967

被折叠的 条评论
为什么被折叠?



