分享iMX6Q自編QT程序運行報缺少庫文件問題解決方法

原文鏈接:http://www.forlinx.com/zixun/167.htm

寫了一個QT小程序,但將程序拷貝到飛凌OKMX6Q-C板子上運行時出現如下錯誤:

/opt/qt4.8.5/apps/lincom: error while loading shared libraries: libts-1.0.so.0:

cannot open shared object file: No such file or directory

經過查詢資料,比對分析後發現,這是由於imx6開發板啓動的過程中沒有加載tslib和qt4.8.5的相應的環境變量,這些環境變量存在/etc/rc.d/qt_env.sh這個腳本文件中,目前有兩種方法可解決缺少庫文件問題。如有其它方法,也希望可以分享出來,一起探討。

1、要運行自己的程序,假設爲dog程序,應先執行source命令配置tslib和qt4.8.5的相應的環境變量才能運行成功,命令如下:

root@freescale /$ source etc/rc.d/qt_env.sh

calibrated

root@freescale /$ ./dog

這樣dog命令就可以正常運行了

 

2、將qt_env.sh文件中有關tslib和qt4.8.5的相應的環境變量配置在/etc/profile文件中,這樣啓機後直接運行程序就可以了,如下:

##tslib

export TSLIB_ROOT=/usr/local/tslib

export TSLIB_TSDEVICE=/dev/input/event2

export TSLIB_TSEVENTTYPE=input

export TSLIB_CONSOLEDEVICE=none

export TSLIB_CALIBFILE=/etc/pointercal

export TSLIB_CONFFILE=$TSLIB_ROOT/etc/ts.conf

export TSLIB_PLUGINDIR=$TSLIB_ROOT/lib/ts

export TSLIB_FBDEVICE=/dev/fb0

export PATH=$TSLIB_ROOT/bin:$PATH

export LD_LIBRARY_PATH=$TSLIB_ROOT/lib:$LD_LIBRARY_PATH

##qt4.8.5

export QTDIR=/opt/qt4.8.5

export PATH=$QTDIR/bin:$PATH

export LD_LIBRARY_PATH=$QTDIR/lib:$LD_LIBRARY_PATH

export QT_PLUGIN_PATH=$QTDIR/plugins

export QT_QWS_FONTDIR=$QTDIR/lib/fonts

#export QWS_MOUSE_PROTO=mouseman:/dev/input/mice

export QWS_MOUSE_PROTO="tslib:/dev/input/event2 mouseman:/dev/input/mice"

export QWS_DISPLAY="linuxfb:mmWidth50:mmHeight130:0"

將上面環境變量加到profile裏後,保存退出,再輸入sync命令系統保存然後就可以了。


基於OKMX6Q-C (www.forlinx.com/68.htm)開發板,其它平臺未經驗證,請參考使用。


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章