ARM板设置开机自启动应用程序

ARM板设置开机自启动应用程序

解决了开发板开机自启动应用程序的问题,写此博客用来记录,方便以后查阅。

1、环境

开发板:    英创开发板

开发环境:Ubuntu16.04

IDE:         QtCreater4

构建套件:qmake4  +  arm-linux-g++

2、开机启动文件

每个板子都可能有不同的Linux内核,故启动文件不近相同,举例:

/etc/init.d/rcS  

/etc/init.d/rc.local

/etc/profile

/usr/etc/rc.local

我的板子上是/etc/profile

3、添加启动命令

进入开机启动文件,在最后一行添加需要执行的命令。

如:

#./work/test_log                     代表直接开机执行/work下的test_log可执行文件

#cd /work

#./test_log                           拆解成两步执行(存在问题,每次开启一个新连接,输入用户后就会运行一个程序,累加进行)

 

还可以使用开发板资料中的方法,安装烧写软件,直接将程序烧写到NandFlash     

4、程序后台运行

程序启动命令后添加&,进入后台启动程序

程序可以使用命令nohup  & 支持后台运行,关闭终端后,程序也会继续运行

完整命令

nohup  ./work/test_log  > /dev/null & 

将输出重定向到null设备(忽略输出),此命令支持远程服务器后台运行程序,

开机自启可以不使用nohup  &

关闭nohup  ,使用  ps -A查看所有进程,使用kill命令+进程号。

5、要明确程序运行目录和程序所在目录

我就遇到这个问题,我的程序需要读取配置文件。程序手动运行,没有任何问题;开机自启动,无法读取到配置文件,配置文件不存在。

最后发现开机自启程序运行目录和程序所在目录不一致。

介绍Qt两个函数,获取程序运行目录和程序所在目录

/获取程序所在的目录
qDebug()<<"current applicationDirPath: "<<QCoreApplication::applicationDirPath();
//获取当前程序所在工作目录
qDebug()<<"current currentPath: "<<QDir::currentPath();

 

转载于:https://www.cnblogs.com/shuoguoleilei/p/11382950.html

  • 0
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值