生而自由

自由而无用的灵魂

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。

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)编码,二是要在源文件开头加入如下声明:

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

 

点赞

发表评论

电子邮件地址不会被公开。 必填项已用*标注