关于此主题有相当多的信息,但由于某些原因,我无法使其工作。这是一个覆盖raspian发行版的'DietPi'风格的覆盆子pi,也许是我的问题和其他问题的区别。使用LXDE会话自动启动GUI应用程序
所以我有一个GUI应用程序,我希望在LXDE会话开始后启动时启动。所以我在这里使用的以下文件:
/etc/xdg/lxsession/LXDE/autostart
,并添加一行:
@/myapplication
这个工作,但是,它会启动这个程序的多个实例,而第一个老是死机。这会产生问题,因为资源(IO,文件等)有一些竞争。所以我所做的就是创建脚本文件,而不是/myapplication-autostart.sh像这样:
if pgrep "myapplication" > /dev/null
then
echo "my application is already running"
else
/myapplication
fi
,然后改变的/ etc/XDG/lxsession/LXDE /自动启动到@/myapplication-autostart.sh。现在我发现程序只启动一次,但实例崩溃。它尝试创建窗口时会崩溃(opencv imshow)。这很奇怪,因为如果X会话不可用,程序也会无法运行,但由于某种原因,它会崩溃,我不知道该在哪里检查原因。
此外,为了测试它不是脚本文件的问题,我评论了除/ myapplication以外的所有内容,并且我发现脚本文件在连续循环中运行,并且每次关闭应用程序时都会打开备份。我不确定这是为什么。
我已经尝试在脚本中添加睡眠延迟,它并没有帮助。无论出于何种原因,看起来LXDE自启动脚本在启动pi时至少运行了3次,而第一个环境的情况导致程序崩溃。有人明白调用这个自动启动脚本的顺序和行为吗?
经过大量时间调查类似问题(浪费了几乎几个小时)之后,我想提供以下提示。新的位置是'/ etc/xdg/lxsession/LXDE-pi/autostart'(强调** - pi **),如下所示:https://www.raspberrypi.org/forums/viewtopic.php?f = 91&T = 131760 –