0%

Qt5.7 VS2013生成pdb及xp兼容

最近更新了编译环境到Qt5.7及VS2013,记录一下几个细节。 生成pdb。 看到QtCreator里面,在Debug和Release之外又多出了一个Profile的编译配置,看到网上的资料称Profile就是Release编译但又有调试信息(即会生成PDB),对比了一下Profile和Release的 项目-构建-qmake 的配置,Profile里面只是多勾上了"Generate separate debug info"和"Enable QML debugging and profiling"两项,而且对于后面这项QtCreator提示有安全风险。所以还是切换到Release下,再勾上"Generate separate debug info"即会生成pdb文件。  

兼容Windows XP。 虽然XP用户的比重已经很小了,但还是没法完全放弃。按网上的资料,在项目pro中加入下列配置即可实现实现XP兼容,以及使用Windows SDK 7.1。

1
2
3
4
5
6
7
8
9
10
win32 {
QMAKE_LFLAGS_WINDOWS = /SUBSYSTEM:WINDOWS,5.01
QMAKE_LFLAGS_CONSOLE = /SUBSYSTEM:CONSOLE,5.01

DEFINES += _ATL_XP_TARGETING
QMAKE_CFLAGS += /D _USING_V120_SDK71_
QMAKE_CXXFLAGS += /D _USING_V120_SDK71_
LIBS += -L$$quote(C:\Program Files (x86)\Microsoft SDKs\Windows\v7.1A\Lib)
INCLUDEPATH += $$quote(C:\Program Files (x86)\Microsoft SDKs\Windows\v7.1A\Include)
}

中文兼容。 又是这个老大难问题,一个是需要源文件使用UTF-8(不带BOM)编码,二是要在源文件开头加入如下声明:

1
2
3
#if defined (_MSC_VER) && _MSC_VER >= 1600
#pragma execution_character_set("utf-8")
#endif