设置嵌入式Linux系统中Qt程序自启动

1 篇文章 0 订阅

        使用嵌入式Linux系统开发产品时,如果应用程序使用Qt开发,经常会碰到系统启动完毕,需要程序自动运行的情况。

        网上提供的思路大多都是在/etc/init.d/rcS中添加启动脚本,这种方法测试之后发现并不能让程序自动启动。经过本人测试,以下方法可以很好的解决这个问题。

首先编写一个脚本relay.sh,将这个脚本和Qt的程序放在同一个文件夹下

#!/bin/bash

source /etc/profile
cd /home/linaro/bin
./QtApp &

在这个脚本中,/etc/profile中有Qt环境变量的配置,如果不需要配置环境变量,source /etc/profile这一步可以省略。

以下是profile中Qt环境变量的配置,profile中原文件内容这里就不贴出来了

export QTDIR=/usr/local/Qt-5.9.9
export set QT_QPA_FONTDIR=$QTDIR/lib/fonts
#export QT_QPA_PLATFORM_PLUGIN_PATH=$QTDIR/plugins/
export set LD_LIBRARY_PATH=$QTDIR/lib:$LD_LIBRARY_PATH
#export QT_QPA_PLATFORM=linuxfb:fb=/dev/fb0
#export QWS_MOUSE_PROTO=/dev/input/event0
export set QT_QPA_FONTDIR=$QTDIR/lib/fonts/truetype/wqy

有了这个脚本后,进入/etc/xdg/autostart这个目录,这个目录中有很多desktop结尾的文件,在这里创建一个以desktop结尾的文件,文件内容如下:

[Desktop Entry]
Version=1.0.0
Name=Relay Protection App
Exec=sudo /home/linaro/bin/relay.sh
Type=Application
NotShowIn=GNOME;KDE;Unity;MATE;
StartupNotify=false

        其中Exec就是需要执行的脚本,这里我用了sudo使用root来运行relay.sh脚本,不加sudo也是可以的。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值