win7 64位专业版下的x64编译问题
Posted 朝晖
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了win7 64位专业版下的x64编译问题相关的知识,希望对你有一定的参考价值。
在Django的开发过程中,碰到一个问题,就是所有本地库的位数必须是相同的,于是某些库需要重新编译一下,工作环境,不能用盗版程序,VC++ 2008\2010 Express版本身都不支持X64的编译,网上的文档大多也是说安装SDK以后在IDE界面的下编译。我尝试了以下方案,基本可行。
1、我的机器环境64位Windwos7专业版,首先安装了VC++ 2010 Express版。这个安装我是用最简单的在线版本,下载量是150M,如果你网速不快,最好找个ISO版本来装。
2、其次下载了Microsoft Windows SDK for Windows 7 and .NET Framework 4 (ISO) ,我选择了X64版本,这个东西安装前,必须把所有的VC 2010 redisbute包卸载了,才能成功安装
3、到开始菜单的Windows SDK 7.1目录找Windows SDK 7.1 Command Prompt命令行入口,从这个入口进去用nmake /f makefile.vc 作编译可以得到64位编译版本,不过有时候可能是makefile的原因,可能x86的编译结果也会同时出来,这个时候需要用dumpbin指令看一下编译dll的信息
4、dumpbin指令属于VC++的组件,所以需要用VC++的Visual Studio 命令提示命令行入口来进。指令格式:dumpbin /headers proj.dll。出来的信息满多的,位数信息在刚开始FILE HEADER VALUES下面第一行machine后面。比如下面这样
PE signature found File Type: DLL FILE HEADER VALUES 14C machine (x86) 5 number of sections 4F66E3F3 time date stamp Mon Mar 19 15:44:51 2012 0 file pointer to symbol table 0 number of symbols E0 size of optional header
以上是关于win7 64位专业版下的x64编译问题的主要内容,如果未能解决你的问题,请参考以下文章
qt4.8.7 源码在win7+vs2010环境的x64编译(qt 64位)
Windows7家庭普通版(Home Basic)x64官方ISO镜像如何下载
在Win7 64位旗舰版下,利用Vs2008编译64位的Qt 4.8.2