1、https请求报错
qt.network.ssl: QSslSocket::connectToHostEncrypted: TLS initialization failed
解决办法:拷贝匡住的动态库到软件运行目录
2、数据库驱动加载失败
Driver not loaded Driver not loaded
解决办法:拷贝plugins/sqldrivers到程序运行目录
3、unix下库搜索目录设置当前路径
QMAKE_LFLAGS += -Wl,-rpath=.
QMAKE_CXXFLAGS += -Wl,-rpath=.
4、启用调试符编译
.pro文件添加修改宏定义:
DEFINES -=QT_NO_DEBUG_OUTPUT # enable debug output
5、编译版本区分
CONFIG(debug, debug|release){
message("debug")
}
else {
message("release")
}
6、qml打包
windeployqt.exe/macployqt app.exe/app --qmldir=project_dir
PS: 打包完成后,若无法运行,确认打包目录是否包含QtQuick.2,若无,则从qt安装目录拷贝到打包目录
7、高分辨率屏适配
方法一
QCoreApplication::setAttribute(Qt::AA_UseHighDpiPixmaps);
QCoreApplication::setAttribute(Qt::AA_EnableHighDpiScaling);
// 图片方法毛边处理(设置此属性)
//QGuiApplication::setHighDpiScaleFactorRoundingPolicy(Qt::HighDpiScaleFactorRoundingPolicy::PassThrough);
方法二
QCoreApplication::setAttribute(Qt::AA_Use96Dpi); // 固定窗口尺寸,不随分辨率大小变化
8、windows下VS编译qt项目报错: error: C2001: 常量中有换行符
解决方法:
1、.pro文件添加utf8支持
msvc {
QMAKE_CFLAGS += /utf-8
QMAKE_CXXFLAGS += /utf-8
}
2、工具->外部->配置->文件编辑器->行为
设置bom头
9、启用控制台输出
在.pro里添加
# enable console output
CONFIG += console