标题:程序移植出现undefined symbol: _ZN7QWidget8qwsEventEP8QWSEvent
作者:mhtt
日期:2014-08-12 15:52
内容:
刚开始学习linux,参照http://blog.csdn.net/vacole/article/details/6873314 ,终于搭建好了交叉编译环境,新建了一个项目,并加入了一个简单的Label,如图!
然后点击运行后,在build-hello-Embeded-Debug文件夹中生成了hello可执行文件和其他一些文件,我将build-hello-Embeded-Debug文件夹拷贝到ARM(Debian系统)设备上运行,就出现了错误:
symbol lookup error: ./hello: undefined symbol: _ZN7QWidget8qwsEventEP8QWSEvent
在网上找了一些解决办法:
1、指定QTDIR和LD_LIBRARY_PATH
可我QT环境是装在PC机上的,ARM设备中没有QT环境。我看《天嵌科技出品--Qt程序开发完全手册(上)之24小时超级版本_第二版_20091216.pdf》上面写的程序编译好之后,就直接拷贝到开发板上执行了,所以应该不需要指定QTDIR和LD_LIBRARY_PATH吧。
2、动态库链接问题,用ldd测试
我输入ldd hello 指令,但却提示“不是动态可执行文件”
小问题,求高手指教,谢谢!
#1 [scosdq 02-11 22:37]
移植Qt到树莓派上,同样出现 'undefined symbol: _ZN7QWidget8qwsEventEP8QWSEvent'
#2 [jnny_cn 02-11 23:24]
感觉你只是在pc上完成了交叉编译并生成了
可执行文件,是不是你的
板子上还没有安装相关的qt-arm的库文件呢?
如类似在/usr/lib中有没有qtcore.so等的库文件呢?
并且首次运行要用-qws吧?