繁体   English   中英

如何使用VS2003工具集在VS11中构建C ++项目?

[英]How to build a C++ project from within VS11 using the VS2003 toolset?

我尝试将Visual C ++ 2005的(工作)平台工具集的副本添加到C:\\ Program Files(x86)\\ MSBuild \\ Microsoft.Cpp \\ v4.0 \\ Platforms \\ Win32 \\ PlatformToolsets \\ v71,替换所有有意义的内容。

但是当我尝试编译我的项目时,输出令人失望:

1>  Microsoft (R) 32-bit C/C++ Optimizing Compiler Version 13.10.6030 for 80x86
1>  Copyright (C) Microsoft Corporation 1984-2002. All rights reserved.
1>  
1>  cl ÿþ/
1>  
1>cl : Command line warning D4024: unrecognized source file type 'ÿþ/', object file assumed
1>  Microsoft (R) Incremental Linker Version 7.10.6030
1>  Copyright (C) Microsoft Corporation.  All rights reserved.
1>  
1>  /out:.exe 
1>   ■/ 
1>LINK : fatal error LNK1181: cannot open input file ' ■/.obj'
========== Rebuild All: 0 succeeded, 1 failed, 0 skipped ==========

对我来说看起来像是一个字符集问题,但有没有人让它工作?

我想如果你按照这个链接,你会找到你想要的答案。

看起来您的cl.dll数据不合适或者版本不合适 ,因此您可能无法完全转换工具链。


不在一边,我很好奇你为什么要这样做

为什么在世界上你想要覆盖文件? 它应该像更改项目中的可执行目录一样简单。 什么时候它找到它将去的cl.exe / link.exe。 ProjectProperties-> Configuration Properties - > VC ++目录。 只需创建一堆配置。 并调整每个编译器。 它应该工作得很好。 请注意,您可能需要调整源,包括等等,但它应该只是工作。

取代有意义的一切

我相信,你错过了一个文件,因此你的cl.exe选择了一个依赖DLL的错误版本。

在我的Microsoft Visual Studio .NET 2003 / Vc7 / bin文件夹中,我看到以下文件,这些文件是编译所需的:

cl.exe    Microsoft C/C++ Compiler Driver
c1.dll    Microsoft Visual C Compiler Front End
c1xx.dll  Microsoft Visual C++ Compiler Front End
c2.dll    Microsoft 80x86 Compiler Back End

创建二进制文件也需要其他文件(ml.exe,link.exe,lib.exe,...)。 但目前你的编辑失败了。

对于C ++项目,您将需要13.10.3077.0版本中的c1xx.dll。

顺便说一句:好主意。 当我开始讨论时,我也想尝试一下。 如果你能在这里发布最终解决方案,我将不胜感激。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM