我可以在Visual Studio 2008中从Win32解决方案配置(反之亦然)编译x64 exe吗?

时间:2013-03-27 14:49:52

标签: c++ visual-studio-2008 build x86 64-bit

我有一个Visual Studio解决方案,其中包含许多项目。 x86和x64都有调试和发布配置,当选择特定组合时,所有内容都以该格式成功构建。

但是,现在要求无论当前选择的“位数”如何,都应该将某个C ++项目编译为x86和x64。因此,例如,当解决方案是在x86调试模式下构建时,构建目录中应该有两个exe的调试副本,一个x86和一个x64。

实现这一目标的最简单方法是什么?我已经尝试制作了两个项目副本,exename_32和exename_64。我的第一个想法是将.vcproj文件中Debug | x64节点的内容复制到exename_64的Debug | Win32节点中。但是当我尝试在Win32模式下构建解决方案时,我得到exename_64项目的以下错误:

  

20> c:\ program files(x86)\ microsoft visual studio 9.0 \ vc \ include \ codeanalysis \ sourceannotations.h(17):error C2371:'size_t':redefinition;不同的基本类型

     

20 - ;预定义的C ++类型(编译器内部)(19):参见'size_t'的声明

     

20> C:\ Users \ melol \ Desktop \ local \ march03 \ src \ thirdparty \ Microsoft SDKs \ Windows \ v6.0 \ include \ winnt.h(81):致命错误C1189:#error:“没有目标建筑“

有问题的exe是带有wWinMain的Windows命令行实用程序。只有两个#include是

#include <windows.h>
#include <iostream>

思想?

1 个答案:

答案 0 :(得分:1)

你绝对可以在Visual Studio 2008中构建32/64位(反之亦然)。

实现任务的最简单方法似乎是通过使用“批量构建”来实现:http://msdn.microsoft.com/en-us/library/169az28z(v=vs.90).aspx

  

使用此对话框可以构建多个项目配置   一度。例如,您可以决定构建每个项目   使用一个命令配置项目。你可以访问它   “构建”菜单中的对话框。