DM81XX下,QT程序自启动失败
开发环境:DM81XX,MCFW,DVR_RDK,QT4.8.1
启动时在/etc/rc5.d/下设置QT程序自启动失败,原因有下:
1),启动QT前,必须先启动dvr_rdk下 ./init.sh ./load.sh ./run.sh三个脚本;
初始化QT所需要的参数fb0,fb2,以及framebuffer
2),QT环境变量在/etc/profile给出,系统在启动时,在执行到qt程序时,/etc/profile 还没有执行
所以要在qt程序启动之前使用环境变量。用export给出
如下:
export PATH PS1 OPIEDIR QPEDIR QTDIR EDITOR TERM
export set QT_QWS_FONTDIR=/usr/lib/fonts/
export set QT_PLUGIN_PATH=/usr/lib/qt/plugins
./qt程序
3),因为./run.sh & 采用后台运行,所以在qt程序运行时,qt所需要的环境有可能没有初始化,所以在启动qt程序时,加上延时
确保初始化。
综上:脚本中的调用顺序如下
//先运行MCFW下的三个脚本
./init.sh
./load.sh
./run.sh &
sleep 3 //延迟保证初始化完成
//设置环境变量,
export PATH PS1 OPIEDIR QPEDIR QTDIR EDITOR TERM
export set QT_QWS_FONTDIR=/usr/lib/fonts/
export set QT_PLUGIN_PATH=/usr/lib/qt/plugins
//启动QT程序
./qt程序