2)建立支持库
通过./configure来设置,主要配置可以通过--help来获得帮助;之后用make命令,然后用make install 命令。将库安装到指定的路径下面。其中的设置包括指定安装的路径;未配置的话,默认的路径是/usr/local/Trolltech/QtEmbedded-4.5.0;
(3)设置环境变量
为了能够使用Qt for Embedded Linux, 必须导出的PATH变量有qmake, moc 以及其他Qt for Embedded Linux 的工具, 以及LD_LIBRARY_PATH 必须导出。例如: PATH=/usr/local/Trolltech/QtEmbedded-4.5.0/bin:$PATH
- export PATH
(4)建立虚拟的frambuffer。
建立虚拟的frambuffer,需要安装X11 Platforms .
3、嵌入式linux版本的qt环境变量
POINTERCAL_FILE:指定文件包含的数据,用来校准触摸笔设备。同时可以参考QWSCalibratedMouseHandler and Qt for Embedded Linux Pointer Handling.
QT_ONSCREEN_PAINT:如果定义了的话,可以用来将控件显示在屏幕上。如果没有其他控件在同一个区域的话,该设备响应的区域将不会随着屏幕设备驱动的改变而改变。设置这个环境变量相当于在控件中应用程序中设置Qt::WA_PaintOnScreen。
QWS_SW_CURSOR:如果定义了的话,软件鼠标的光标将一直是可用的。(即使使用硬件加速驱动器来支持硬件光标)
QWS_DISPLAY:指定显示形式和framebuffer.例如:export QWS_DISPLAY=[:]...[:]
QWS_SIZE:指定嵌入式linux qt窗口在屏幕上的大小。export QWS_SIZE=x
QWS_MOUSE_PROTO:指定触摸设备。 export QWS_MOUSE_PROTO=[:],参数可以是MouseMan, IntelliMouse, Microsoft, VR41xx, LinuxTP, Yopy. Tslib and keys。/dev/mouse 指的是鼠标设备, /dev/ts for touch panels。
QWS_KEYBOARD为输入设备指定输入设备和驱动。比如:export QWS_KEYBOARD=[:]。参数可以是SL5000, Yopy, VR41xx, TTY, USB and keys,指定的是一个标准设备。比如:/dev/tty0。
4、在嵌入式linux上运行qt程序
任何嵌入式linux应用程序可以通过构建QApplication 对象QApplication::GuiServer的格式,被构建为服务server application。或者通过-qws命令行选项的方式。本文当假设用The Virtual Framebuffer 或者嵌入式linux的VNC协议,或者正确配置的Linux framebuffer。而且没有服务进程在运行。可以使用的显示方式有:
- Using a Single Display
单显示,运行这种显示方式,改变Linux console,而且选择一个应用来运行。它要求在安装过程中,环境变量是可用的。它要求指定的硬件设备驱动必须工作正常。比如:
- cd path/to/QtEmbedded/demos/textedit
- ./textedit -qws
- * Using Multiple Displays
linux同时也是支持多设备显示。有两种方式可以完成。当在运行多服务程序的时候,显示屏的驱动(以及数量)必须为每一个程序进行指定。用-display命令行或者QWS_DISPLAY 来指定。比如:
- ./myfirstserverapplication -qws -display "transformed:rot90:1"
- ./mysecondserverapplication -qws -display "QVFb:2"
需要注意的是,必须指定一个显示设备,在开始客户端程序的时候。比如:./myclientapplication -display "QVFb:2"。在程序运行的时候,没有办法将一个客户端程序从一个显示移动到另一个显示。用多显示屏驱动,另一方面,应用程序可以方便的在两个不同类型的显示屏之间切换。多屏幕显示可以用-display命令行参数来指定 或者通过设置QWS_DISPLAY环境变量比如: ./myserverapplication -qws -display "Multi: QVFb:0 QVFb:1:offset=0,0
VNC:offset=640,0 :2"
- * Command Line Options
命令行选项