瑞芯微(EASY EAI)RV1126B应用程序自启动

描述

1. 简要介绍

开机自启动涉及到四个脚本文件。分别是:rc.local、S99_userapp、start_app.sh、stop_app.sh。

1.1 脚本说明:

/etc/rc.local:这个脚本是Linux文件系统启动后第一个程序就会去调用的脚本。它会去/etc/init.d/下面,按命名顺序,遍历调用所有脚本。(如A41会比S41先调用,S41会比S99先调用)

/etc/init.d/S99_userapp:这个是专用于管理用户应用程序启/停的脚本。

/userdata/start_app.sh:用户应用程序的启动逻辑通常写进这里,里面可以随意修改。

/userdata/stop_app.sh:用户应用程序的结束逻辑通常写进这里,里面可以随意修改。

1.2 调用顺序及关系:

 

EASY-EAI灵眸科技

2. 详细说明:

2.1 /etc/init.d/S99_userapp

系统的自带的启动脚本,如有需要可自行修改。

#!/bin/sh source /etc/profile case "$1" in start) if [ -e /userdata/start_app.sh ];then /userdata/start_app.sh & fi ;; stop) if [ -e /userdata/stop_app.sh ];then /userdata/stop_app.sh & fi ;; *) echo "Usage: $0 {start|stop}" exit 1 ;; esac exit 0

把绝对路径执行脚本的命令添加到脚本“/etc/init.d/S99_userapp”的case start分支中,系统启动时就会自动执行这句命令,从而启动用户空间的应用脚本。

2.2 /userdata/start_app.sh

板卡出厂自带的启动脚本,如有需要统筹管理多个启动脚本,则可修改此对脚本。

#!/bin/sh if [ -e /userdata/apps/run.sh ];then cd /userdata/apps && ./run.sh fi

2.3 /userdata/stop_app.sh

#!/bin/sh # Kill your app when shutdown system. For example: # killall facialGate

3. 操作指导:

3.1 注意事项说明:

通常用户的程序启动后就不会退出,所以要在程序执行命令后面添加“&”使之在后台运行,这样就不会阻塞其它启动脚本的运行。

/qSolu-facialGate &

若用户有自己的动态库在用户空间中,也可以在启动脚本内添加环境变量。

source /etc/profile export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/userdata/mylib/

如果要开机自动启动的是QT程序,且有对QT环境变量有自定义的要求,则还可以设置QT环境变量。

export QT_QPA_FB_DRM=1 export QT_QPA_PLATFORM=linuxfb:rotation=0 #export QT_QPA_EVDEV_TOUCHSCREEN_PARAMETERS=/dev/input/event5:rotate=180

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分