linux开机自启动qt界面,Qt/E程序ARM板上开机自启动

开发板开机启动,我将程序启动,写到/etc/init.d/rcS中,可以启动控制台程序,但是有一个qt的界面程序启动不了。网上找了一下,发现一篇博客刚好解决这问题,转载过来。

博客原文如下:

我的板子是ok6410,搭载的2.6.36内核,文件系统是按照老师给的文档自己做的,这两天一直在尝试自定义开机启动脚本文件或应用程序,经历多次失败终于在灵光一闪间成功了,这个方法可能不科学,但是可以实现要求:

inittab中要有下面一行:

console::respawn:-/bin/sh

respawn 意思是自动登录,而不是要你先回车它才会登录,这点在设置子启动程序时需要设置成这样

-/bin/sh 的 - 意思是在登录后执行profile

所以我们可以写一个脚本文件:/etc/init.d/rcqt

里面写上一行启动应用程序的命令:/key/qt_gui -qws -wenquanyi

然后在profile 文件中添加这样一行,这样就添加了rcqt这个脚本:

. /etc/init.d/rcqt        //.与 /之间要有空格,意思是将脚本包含进当前脚本

或者:/etc/init.d/rcqt  //意思是直接执行rcqt这个脚本

然后就可以了。

注意:

当然之前如果程序运行所需要的环境变量没有设置你还要设置上:

1.可以就在profile中直接写环境变量;

2.也可以新建其他环境变量脚本然后像本文应用程序一样在profile中添加  新建的那个脚本;

3.或者是把新建的脚本添加进/etc/init.d/rcS(rcS这个脚本是做的登录之前的初始化)

4.我在之前的尝试中曾将挂载模块的脚本,设置临时环境变量的脚本都添加进rcS这个脚本中,都成功了,可就是将执行QT应用程序的那个脚本添加到rcS中就不能正常启动该应用程序,或者直接在rcS中添加/key/qt_gui -qws -wenquanyi 也不能正常启动应用。现在想来也许是qt应用程序需要在系统登录后才能运行吧。所以应该将应用程序从profile 中通过脚本启动或直接启动

我是照着人家这个来的,写一个启动脚本,将脚本放到profile文件中,结果搞定。

又出问题了,这个qt的应用程序不登录终端还启动不了。

解决了,那个profile可以执行脚本,rcS同样可以执行脚本,编写脚本rc.local,在rcS中添加exec /etc/init.d/rc.local搞定。

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 在 Linux 上设置 qt 程序开机自启动需要在系统启动时执行相应的命令。这可以通过在 /etc/rc.local 文件中添加相应的命令来实现。 1. 使用管理员权限打开 /etc/rc.local 文件。 2. 在 exit 0 前添加以下命令: ``` /usr/bin/qt-path/your-program & ``` 3. 保存并关闭文件 4. 重启系统,确认程序是否已经自动启动。 注意: qt-path 是 qt 程序所在的路径,your-program 是程序的名称。 ### 回答2: Linux系统可以通过一些简单的设置来实现开机自启动Qt程序。该过程需要分为两个步骤:首先是编写启动脚本,然后设置该脚本在启动时自动执行。下面是具体的步骤: 一、编写启动脚本 1. 创建一个新的脚本文件,例如:startup.sh 2. 在脚本文件中添加以下内容: ```bash #!/bin/bash export DISPLAY=:0.0 /path/to/your/application exit 0 ``` 其中,`/path/to/your/application`表示需要启动的Qt程序路径。 3. 保存并退出脚本文件。 4. 授予该脚本文件可执行权限。可以使用以下命令: ``` chmod +x startup.sh ``` 二、设置开机自启动 1. 打开终端并输入: ``` sudo nano /etc/rc.local ``` 2. 将以下内容添加到文件末尾,但在`exit 0`行之前: ```bash sudo -u [username] /path/to/startup.sh & ``` 其中,`[username]`应替换为你的用户名(可通过`whoami`命令获得),`/path/to/startup.sh`应替换为你的启动脚本的完整路径。 3. 保存并退出文件。 4. 重新启动计算机以测试是否成功。 总结:以上为Linux开机自启动Qt程序的步骤,可以通过编写启动脚本和设置开机自启动实现。如果执行正确,Qt程序将在计算机启动时自动运行。 ### 回答3: 在Linux系统上,通过将Qt程序添加到系统自动启动列表中,可以让程序开机时自动启动运行。 下面是具体步骤: 1.打开Qt程序所在的目录,找到程序的可执行文件 2.创建一个.desktop文件,格式如下: [Desktop Entry] Type=Application Name=程序名称 Exec=/path/to/程序可执行文件 Icon=/path/to/程序图标 3.将.desktop文件存储在/etc/xdg/autostart目录下 sudo cp 程序.desktop /etc/xdg/autostart 4.重启电脑即可。 需要注意的是,为了让.desktop文件能够成功启动程序,需要确保程序的启动命令和.desktop文件中的路径及名称保持一致。同时,启动程序时可能需要管理员权限,可以在Exec命令前添加sudo以确保程序以root权限启动。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值