1.QPA (QT platform abstraction )
QT_QPA_DEFAULT_PLATFORM , 通常在mac 上是cocoa, 在window 上是windows,在linux X11 下是xcb, 如果有OPENGL支持,那么选eglfs. 对于无硬件加速的设备, 选择linuxfb, minimal 仅仅是让程序跑通,不起任何作用(看不到界面).
所以我现在用的是 ./hello -platform linuxfb
2.Qt下如何编译库
一般分为动态库和静态库,方法分别如下:
一. 静态库的生成
1. 测试目录: lib
2. 源码文件名: mywindow.h, mywindow.cpp
3. 编写项目文件: mywindow.pro
注意两点:
TEMPLATE = lib CONFIG += staticlib
4. 生成Makefile:
qmake mywindow.pro
5. 编译生成静态库libmywindow.a
make
二. 静态库的使用
1. 测试目录: test
2. 将mywindow.h与libmywindow.a拷贝至test目录下
3. 编写main.cpp, 包含头文件mywindow.h, 并调用MyWindow类
4. 编写项目文件: test.pro
注意加上库路径与库文件名:
LIBS += -L ./ -lmywindow
5. 生成Makefile: qmake test.pro
6. 编译: make
7. 运行: ./test
三. 动态库的生成
动态库编译基本和静态库类似,需要将上述将要进行编译的项目文件.pro中下面这行去掉
CONFIG += staticlib
按上述操作编译完后就可以得到以lib开头并且.so* 结尾动态库文件,一般有多个。