Linux 开发示例
备注
本页软件流程沿用前面整理的 I3399 / X3399 软件文档模板。X3399V4 实际源码包名、镜像名、分区文件和工具版本,以当前 SDK 和发布资料为准。
本页整理 Linux 系统下常用调试命令和应用开发示例,删除其他产品介绍。
播放 MP3
挂载存放音频文件的 TF 卡或 U 盘后,可使用播放器播放:
mkdir /sdcard
mount /dev/mmcblk1p1 /sdcard
cd /sdcard
./mplayer *.mp3
后台播放:
./mplayer *.mp3 &
中止程序运行
前台程序可通过 Ctrl+C 退出。后台程序可通过 ps 查找 PID 后使用 kill 结束:
ps
kill <PID>
屏幕抓图
gsnap test_pic.jpg /dev/fb0
执行后会在当前目录生成 framebuffer 截图文件。
挂载 TF 卡
mkdir /sdcard
mount /dev/mmcblk1p1 /sdcard
ls /sdcard
挂载 U 盘
mkdir /udisk
mount /dev/sda1 /udisk
ls /udisk
设备节点可能因分区不同而变化,可通过 dmesg 或 ls /dev/sd* 确认。
保存系统时钟
date
hwclock -w
hwclock -r
设置开机自启动
常见方式是在启动脚本中加入应用程序启动命令,例如:
vi /etc/init.d/S99app
chmod +x /etc/init.d/S99app
也可按 systemd、busybox init 或项目实际文件系统方式配置。
查看内存信息
cat /proc/meminfo
free -m
Hello World
#include <stdio.h>
int main(void)
{
printf("Hello World!\\n");
return 0;
}
交叉编译示例:
aarch64-Linux-gnu-gcc hello.c -o hello
拷贝到开发板后运行:
chmod +x hello
./hello
多线程 / 多进程 / Makefile
Linux 应用开发可按标准 POSIX 方式编写多线程和多进程程序。建议为工程编写 Makefile,并将交叉编译器、库路径、头文件路径统一配置,便于后续维护。