linux - 如何在 linux ubuntu 中启动 gui 应用程序

标签 linux windows qt startup init.d

我有用 Qt 制作的 gui 应用程序,我不会在桌面加载时启动它。 我尝试从终端执行此操作,如下所示:

sudo cp MyApp /etc/init.d
sudo chmode 0777 /etc/init.d/MyApp
sudo update-rc.d MyApp defaults

但是当我重新启动计算机时,它给我程序错误并询问我是否愿意报告它。

谁能告诉我可能是什么问题以及如何解决它? 我应该指出我是 Linux 新手。

编辑:

我还尝试创建一个启动该程序的脚本,并以相同的方式从启动启动该脚本,但它给了我同样的错误。

我不知道这是否重要,但是当该应用程序启动时,它会启动一个从串行端口读取数据的线程。

最佳答案

您没有在 /usr/include/init.d 中启动 GUI 应用程序。这些是与 GUI 无关的系统守护进程。如果您想在 X session 启动时启动应用程序,则必须查看 Xsession 的联机帮助页。

http://manpages.ubuntu.com/manpages/natty/man5/Xsession.5.html

例如我的~/.xsession是

xkbset r rate 250 25
startfluxbox

这里xkbset在我的用户下运行,就像我启动它一样。它实际上可以访问 DISPLAY 和其他 X 资源,这是系统守护进程从不做的事情。对于系统范围,它位于 /etc/X11/Xsession.d 或您的系统使用的任何内容中。

关于linux - 如何在 linux ubuntu 中启动 gui 应用程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22508227/

相关文章:

linux - 主机组正在运行的 ansible 剧本 - 没有匹配的主机

linux - Bash:管道命令输出作为第二个参数

windows - recv() 没有时间从 Win 7 上的套接字接收所有 UDP 数据包?

python - 使用 Fortran 求解器在 Windows 64 位上安装 Odespy

linux - 需要一种更好的方法将 JAVA_HOME 附加到 csh 中的 PATH

c - 在c中使用互斥锁进行多线程并一次运行一个线程

c# - 如何从 C# Windows 窗体中的资源文件获取图像路径?

c++ - 段错误(核心转储)Wt With Qt helloqt

c++ - 如何在QLineEdit的开头设置修复字符串?

c++ - Qt 在可选列表中显示来自资源的图标