找回密码
 立即注册
收起左侧

QT 5.9.7移植到ARM上,运行example程序段错误

0
回复
7100
查看
[复制链接]
累计签到:1 天
连续签到:1 天
来源: 2018-12-25 11:48:27 显示全部楼层 |阅读模式
1Qter豆
本帖最后由 tommyzp 于 2018-12-25 11:49 编辑

1.QT 交叉编译器是gcc-linaro-4.9.4-2017.01-i686_arm-linux-gnueabihf

2.QT源码配置如下:
#!/bin/sh
./configure \
    -v \
-prefix /home/sata2/tommy500/qt-arm597-49 \
-release \
-make libs \
-xplatform linux-arm-gnueabi-g++ \
-optimized-qmake \
-pch \
-sql-sqlite \
-qt-libjpeg \
-qt-libpng \
-qt-zlib \
-tslib \
-no-opengl \
-no-sse2 \
-no-openssl \
-no-cups \
-no-glib \
-no-iconv -no-pkg-config \
-nomake examples -nomake tools \
-I/home/sata2/tommy500/tslib/include \
-L/home/sata2/tommy500/tslib/lib


3.tslib和qt库移植到ARM上设置的环境变量如下:
export TSLIB_ROOT=/system/tslib

export QT_ROOT=/system/qt-arm597

export TSLIB_TSDEVICE=/dev/input/event0

export QT_QPA_EVDEV_TOUCHSCREEN_PARAMETERS=/dev/input/event0:rotate=180:invertx and inverty

export TSLIB_TSEVENTTYPE=input

export TSLIB_CONFFILE=/system/tslib/etc/ts.conf

export TSLIB_PLUGINDIR=/system/tslib/lib/ts

export TSLIB_CONSOLEDEVICE=none

export TSLIB_FBDEVICE=/dev/graphics/fb0

export QT_QPA_EVDEV_MOUSE_PARAMETERS=/dev/input/event0

export QT_QPA_FB_TSLIB=1

export LD_LIBRARY_PATH=/system/lib:/lib:/system/arm49lib/usr/lib:$QT_ROOT/lib:$TSLIB_ROOT/lib:$TSLIB_ROOT/

export QT_QPA_PLATFORM_PLUGIN_PATH=$QT_ROOT/plugins

export QT_QPA_PLATFORM=linuxfb:tty=/dev/graphics/fb0

export QT_QPA_FONTDIR=$QT_ROOT/fonts

export QT_QPA_GENERIC_PLUGINS=tslib:/dev/input/event0

export QT_QPA_FB_HIDECURSOR=1


4.运行examples\gui\analogclock的demo可在正常显示时钟。

5.运行examples\widgets\widgets\calculator,报段错误,使用gdb调试堆栈如下:
Program received signal SIGSEGV, Segmentation fault.
0xb696e270 in QImage::operator=(QImage const&) ()
   from /system/qt-arm597/lib/libQt5Gui.so.5
(gdb) bt
#0  0xb696e270 in QImage::operator=(QImage const&) ()
   from /system/qt-arm597/lib/libQt5Gui.so.5
#1  0xb69374d2 in QPlatformCursorImage::set(Qt::CursorShape) ()
   from /system/qt-arm597/lib/libQt5Gui.so.5
#2  0xb615ada8 in QFbCursor::changeCursor(QCursor*, QWindow*) ()
   from /system/qt-arm597/plugins/platforms/libqlinuxfb.so
#3  0xb6946d26 in QWindowPrivate::applyCursor() ()
   from /system/qt-arm597/lib/libQt5Gui.so.5
#4  0xb6949646 in QWindowPrivate::setCursor(QCursor const*) ()
   from /system/qt-arm597/lib/libQt5Gui.so.5
#5  0xb6ce4404 in qt_qpa_set_cursor(QWidget*, bool) ()
   from /system/qt-arm597/lib/libQt5Widgets.so.5
#6  0xb6cea43a in QWidgetPrivate::show_sys() ()
   from /system/qt-arm597/lib/libQt5Widgets.so.5
#7  0xb6cef214 in QWidgetPrivate::show_helper() ()
   from /system/qt-arm597/lib/libQt5Widgets.so.5
#8  0xb6cf0e82 in QWidget::setVisible(bool) ()
   from /system/qt-arm597/lib/libQt5Widgets.so.5
#9  0x00013416 in ?? ()
Backtrace stopped: previous frame identical to this frame (corrupt stack?)


6.求助大神帮忙定位问题

回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

公告
可以关注我们的微信公众号yafeilinux_friends获取最新动态,或者加入QQ会员群进行交流:190741849、186601429(已满) 我知道了