在32位WINDOWS系统上开发64位应用程序

来源:互联网 发布:中文版音乐制作软件 编辑:程序博客网 时间:2024/05/16 17:06
 

在32位WINDOWS系统上开发64位应用程序

创建 2011-9-2

有些时候需要开发WINDOWS 64位应用程序,但不想安装64位操作系统,所以需要在32位系统下开发64位应用。其步骤并不复杂。
以WINDOWS XP 32位系统和Visual Studio 2008为例,首先保证安装时选择了Visual C++下的x64编译器和工具。
安装完成后,在程序中Visual Studio 2008\VISUAL STUDIO TOOLS下执行Visual Studio 2008 x64 兼容工具命令提示,之后有两种选择

一,在命令行中使用cl (link)命令进行编译 , cl一般会自动调用link,例如

       cl First64Test.cpp /EHsc
 根据自己的需要选择必要的头文件和库文件,具体选项参考cl的帮助。最后编译生成64位exe,拷贝到64位操作系统的目标计算机运行。

二,在集成开发环境中(IDE)构建

        在命令行启动IDE, 加上启动参数/useenv,如devenv /useenv。第一次启动会创建x64解决方案平台,以后可以直接在图形界面启动

  创建新的项目,在菜单“生成”下选择“配置管理器”。在活动解决方案平台下拉列表中,选择新建->x64,在项目平台下拉列表中选择新建->x64,也可以先选择项目平台,然后选上新建解决方案单选框。

    添加源代码文件等,配置必要的头文件和库文件,并为64位做以下配置

  1、 点击菜单"项目"\"属性",打开"配置管理器" \"C++" \"常规",确定"检测64为可移植性问题"为"是(/Wp64)",以保证编译器检查工程的64位可移植性问题。

  2、 在"链接器" \"高级",把"目标计算机"改为"未设置";接下来点击左边的"命令行",在"附加选项"中加入"/MACHINE:AMD64"。

       3、 编译生成64位exe,

       4、 拷贝应用程序到64位操作系统的目标计算机运行。由于IDE编译出来的程序文件,采用了manifest方式来指定dll文件。因此如果是动态链接运行时库,需要拷贝应用程序库文件和Microsoft Visual Studio 9.0\VC\redist\amd64\Microsoft.VC90.CRT\Microsoft.VC90.CRT.manifest及其下的动态库到目标机器;否则修改编译选项,将/MD或/MDd 改为 /MT或/MTd,这样就实现了对VC运行时库的静态链接,在运行时就不再需要VC的dll了。

原创粉丝点击