Vs2012(Vs2013) 编译 64位 Qt (动态库), 并使用自编译Qt建立工程(悲催经历)。(含遗留问题)

时间:2021-10-02 19:37:46

仅供参考。

体会:我个人此次编译不该使用Vs2013编译Qt.

使用以下程序:

Qt : qt-opensource-windows-x86-msvc2012_64_opengl-5.2.1.exe

Vs-Addin : qt-vs-addin-1.2.2-opensource.exe

Vs2012 & Vs2013:

本机64位。

经历:

1,  编译Qt

(最终可知是错误选择) 使用 Vs2013的编译工具【VS2013 x64 兼容工具命令提示】编译的Qt。编译配置:

configure -opensource -platform win32-msvc2012 -debug-and-release -opengl desktop (之后加上了:不编译test & 不编译 例子,i5 cpu 用时不到20分钟)
=> 此时得到的是 64位 Qt 编译结果(因为我用的是【VS2013 x64 兼容工具命令提示】)。

=> 但不知道如果是用 【Vs2012 x64 兼容工具命令提示】编译,和此版本有哪些差异。

=> 这里编译Qt时使用的 win32-msvc2012 的意思是:使用Qt源码目录下 qtbase\mkspecs\win32-msvc2012 这个目录下的项目配置文件编译的,qtbase\mkspecs 目录下还有其他可以选择的项目配置文件(应该找匹配的,所以我用错了)。

2, 使用Qt 64位 编译

1, 创建工程后编译,要将Vs2012编译方式换成x64位编译的。( 以往使用默认的Win32编译方式已经不行了。在正确解决此问题前遇到各种错误提示,挺多不详述)

更换方法:(此修改在工具栏有快捷位置,即:Auto| Debug | Win32 combobox 组)

菜单栏->【Build】->【Configuration Manager】->【Active solution platform】 点【New】在【Type or select the ew platform】下选择 【x64】。【Copy settings from】 下默认写着【Win32】(如果是旧工程编译的话,选这个应该是自动拷贝Win32编译配置下的项目属性(猜测)。)【Create new project platform】默认是勾选的(没有尝试是何作用)。