今天编译Qt4.5.3-powerpc后,将库文件拷贝到powerpc开发板,运行经典的hello,满心期待伟大的hello world,结果发现hello是出来的,但是整个屏幕的颜色都不正确,在阅读qt源码后(qscreenlinuxfb_qws.cpp)发现QT在写framebuffer时的字节顺序由两个参数决定,一个就是MCU的体系结构的大小端模式,另外还有一点就是framebuffer的大小端模式,因为有时候显示设备是独立的,也就是拥有独立显卡,不是共享的MCU的内存,这样独立显卡的体系结构很可能和MCU的体系结是不同的,所以需要在定义CPU的大小端模式(Q_BYTE)后还需要定义framebuffer的大小端模式,可以用QWS_DISPLAY环境变量定义,如export QWS_DISPLAY=linuxfb:littleendian。