2017-04-13 96 views
0

在我们的嵌入式系统中,我们已正确设置udev以运行位于/etc/udev/scripts/mount.sh中的脚本。这工作得很好。但是,我们无法在此脚本中成功运行应用程序。无法从udev脚本运行应用程序

这很奇怪。我们试图在脚本中编写这个应用程序调用,比如test.sh。如果我们从udev脚本(mount.sh)调用test.sh,则什么也没有发生。它只有在我们从shell调用test.sh时才有效。

有没有人知道这里有什么问题?

更新时间: test.sh的样子:

#!/bin/sh 
/usr/local/app/appipc "[header]usb,add" 

appipc只是使用QLocalSocket按名称连接到本地服务器一个简单的Qt应用程序。如果我们在shell中运行这个脚本,它会起作用。但不是从udev脚本(mount.sh)。

+0

你会分享脚本错误信息它说什么时,你跑?它从不运行 – LethalProgrammer

+0

该脚本在shell中运行良好,因此没有错误消息。你的意思是当它由udev脚本运行?我不知道如何确定从那里产生的错误。 – wthung

+0

您是否尝试过系统日志? –

回答

-1

最后我们发现,如果我们从udev脚本运行Qt应用程序,Qt库无法正确加载。这就是为什么我们怀疑它永远不会运行。如果我们运行一个普通的C应用程序,一切都很好!

这是我们的一种愚蠢和疏忽!我们应该提前考虑这一点。感谢大家的时间。