当前位置:编程学习 > wap >>

想请教Qt5 移植到arm 上遇到的问题

如题:
最近下了份 qt-everywhere-opensource-src-5.0.2.tar.gz
交叉编译工具:arm-none-linux-gnueabi

运行一个Helloworld
helloworl.cpp
#include <QApplication>
#include <QLabel>

int main(int argc, char *argv[])
{
    QApplication app(argc, argv);
    QLabel *label = new QLabel("Hello Qt!");
    label->show();
    return app.exec();
}

将相应的东西移植到 板子上,运行Demo程序,问题出现了,板子上什么都不显示,运行总是出错

/qt # ./hello -platform linuxfb

QWidget::paintEngine: Should no longer be called

QPainter::begin: Paint device returned engine == 0, type: 1

QPainter::pen: Painter not active

QPainter::setPen: Painter not active

QPainter::setPen: Painter not active

搞了好久了,没有任何思路,特来求助,请高手帮指点下 ARM 移植 Qt5 出错 --------------------编程问答-------------------- ./hello -platform linuxfb

为什么不是 ./hello -qws呢? --------------------编程问答--------------------
引用 1 楼 qq214517703 的回复:
./hello -platform linuxfb

为什么不是 ./hello -qws呢?

+1 --------------------编程问答--------------------
引用 1 楼 qq214517703 的回复:
./hello -platform linuxfb

为什么不是 ./hello -qws呢?


5.0之后运行的时候就不是 -qws了
我之前移植的qt4.5.3,是./hello -qws 就能显示的

我现在移植5.0 貌似 改成这个了
QPA (QT platform abstraction ) 
QT_QPA_DEFAULT_PLATFORM ,  通常在mac 上是cocoa, 在window 上是windows,在linux X11 下是xcb, 如果有OPENGL支持,那么选eglfs. 对于无硬件加速的设备, 选择linuxfb, minimal 仅仅是让程序跑通,不起任何作用(看不到界面). 
所以我现在用的是 ./hello -platform linuxfb
--------------------编程问答--------------------
引用 2 楼 Sword_1990 的回复:
Quote: 引用 1 楼 qq214517703 的回复:

./hello -platform linuxfb

为什么不是 ./hello -qws呢?

+1

5.0之后运行的时候就不是 -qws了
我之前移植的qt4.5.3,是./hello -qws 就能显示的

我现在移植5.0 貌似 改成这个了
QPA (QT platform abstraction ) 
QT_QPA_DEFAULT_PLATFORM ,  通常在mac 上是cocoa, 在window 上是windows,在linux X11 下是xcb, 如果有OPENGL支持,那么选eglfs. 对于无硬件加速的设备, 选择linuxfb, minimal 仅仅是让程序跑通,不起任何作用(看不到界面). 
所以我现在用的是 ./hello -platform linuxfb --------------------编程问答--------------------
引用 4 楼 ace3196758 的回复:
Quote: 引用 2 楼 Sword_1990 的回复:

Quote: 引用 1 楼 qq214517703 的回复:

./hello -platform linuxfb

为什么不是 ./hello -qws呢?

+1

5.0之后运行的时候就不是 -qws了
我之前移植的qt4.5.3,是./hello -qws 就能显示的

我现在移植5.0 貌似 改成这个了
QPA (QT platform abstraction ) 
QT_QPA_DEFAULT_PLATFORM ,  通常在mac 上是cocoa, 在window 上是windows,在linux X11 下是xcb, 如果有OPENGL支持,那么选eglfs. 对于无硬件加速的设备, 选择linuxfb, minimal 仅仅是让程序跑通,不起任何作用(看不到界面). 
所以我现在用的是 ./hello -platform linuxfb


谢谢,学习了 --------------------编程问答--------------------
引用 3 楼 ace3196758 的回复:
Quote: 引用 1 楼 qq214517703 的回复:

./hello -platform linuxfb

为什么不是 ./hello -qws呢?


5.0之后运行的时候就不是 -qws了
我之前移植的qt4.5.3,是./hello -qws 就能显示的

我现在移植5.0 貌似 改成这个了
QPA (QT platform abstraction ) 
QT_QPA_DEFAULT_PLATFORM ,  通常在mac 上是cocoa, 在window 上是windows,在linux X11 下是xcb, 如果有OPENGL支持,那么选eglfs. 对于无硬件加速的设备, 选择linuxfb, minimal 仅仅是让程序跑通,不起任何作用(看不到界面). 
所以我现在用的是 ./hello -platform linuxfb


学习了  

没有移植过5.0  无能为力了

   --------------------编程问答-------------------- 可以试着看看
qpaintengine_raster.cpp
qblendfunctions.cpp
补充:移动开发 ,  Qt
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,