把可执行文件Helloworld拷到板子上,在超级终端输入 Helloworld -qws & 后,出现如下提示:
/bin/sh: Helloworld:not found
而且环境变量已经按照QT移植百科全书中的方法设置好了
请大家指导一下 我上网查了一下 /bin/sh: Helloworld:not found出现的原因是有些库没有找到
要用静态编译
但是为什么有些人把可执行文件Helloworld拷到板子,可以顺利运行,没有报上述错误
是不是交叉编译器的版本问题啊
因为我看到手册里是用 cross-4.4.1编译 qt-4.4.3的,所以我也用cross-4.4.1编译 Helloworld,但是ok6410的内核是用cross-4.3.2编译的吧,看来我明天换个编译试试。 按照QT移植百科全书,我重新在ubuntu终端用‘ qmake ’了 HelloWorld,然后用cross-4.3.2‘make clean’ 和‘make’ 得到了可执行文件Helloworld,然后下载到OK6410开发板上,在超级终端上设置好环境变量之后,运行./HelloWorld-qws,超级终端报错:./HelloWorld:error while loading shared libraries:libQtGui.so.4:canot open shared object file:No such file or directory
然后我上网查了一下,发现QT移植百科全书设置运行环境变量时(78页)没有指定设好库文件的路径,于是我稍作了修改,全部运行环境变量:
export LD_LIBRARY_PATH=‘/opt/Qtapia4.4.3/lib:/usr/local/lib’
export LD_LIBRARY_PATH='/opt/Qtapia4.4.3/lib:/usr/local/lib'
export QT_QWS_FONTDIR='/opt/Qtapia4.4.3/lib/fonts/'
export QT_PLUGIN_PATH='/opt/Qtopia4.4.3/plugins:/opt/Qtopia4.4.3/qt_plugins'
export PATH='/opt/Qtapia4.4.3/bin:/sbin:/usr/sbin:/bin:/usr/bin'
export QPEDIR='/opt/Qtapia4.4.3'
export QTDIR='/opt/Qtapia4.4.3'
export QWS_DISPLAY='LinuxFb:mmWith76:mmHeight44:1'
export QWS_MOUSE_PROTO='Tslib:/dev/input/event1'
export TSLIB_CALIBFILE='/etc/pointercal'
export TSLIB_CONFFILE='/usr/local/tslib/etc/ts.conf'
export TSLIB_CONSOLEDEVICE='none'
export TSLIB_FBDEVICE='/dev/fb0'
export TSLIB_PUBGINDIR='/usr/local/tslib/lib/ts'
export TSLIB_ROOT='/usr/local/tslib'
export TSLIB_TSDEVICE='/dev/input/event1'
export TSLIB_TSDEVICE='H3600'
重新在超级终端运行./HelloWorld-qws,依然报错:./HelloWorld:error while loading shared libraries:libQtGui.so.4:canot open shared object file:No such file or directory
现在环境变量设置好了,文件路径也包含了运行程序所需要的库文件了,为什么程序还是会报错啊,请各位大大指导下。 我觉得飞凌在wince方面的确很强大,但是在QT和linux方面的技术支持不够,希望飞凌能注意我们这些客户的需求。 是在超级终端里设置环境变量的,也可以另外写一个shell脚本
我用SD卡把程序拷贝到板上的,也试过用nfs文件挂载到板上
file Helloworld后的结果,我和你一样的:
Helloworld: ELF 32-bit LSB executable, ARM, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.14, not stripped
我觉得重点在dynamically linked (uses shared libs)上面,我们设置的运行环境变量不正确,没有指引到正确的lib上,但是我不知道是哪里设置错误
页:
[1]
2