VS2019 VS2010,Microsoft.Cpp.Win32.v60.targets Error MSB6006 "CL.exe" exited with code 2,需要配置daffodil

停在这一行<CL Condition="'%(ClCompile.PrecompiledHeader)' == 'Create' and '%(ClCompile.ExcludedFromBuild)'!='true'"

但是吧,光看这些报错是看不出来根本原因的

需要修改Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\Platforms\Win32\PlatformToolsets\v60\Microsoft.Cpp.Win32.v60.props这个文件

大概是因为daffodil找不到VC6的编译器在哪(因为我安的是Visual C++6.0完整绿色版-win8可用.EXE这个绿色版,安装路径跟daffodil自带的配置不符,如果是原版的话大概不用修改?)

改了两个地方(路径大小写等效,win路径名文件名不区分大小写)

21行    <VCInstallDir>C:\Program Files (x86)\Microsoft Visual Studio\VC98</VCInstallDir>
24行    <VSInstallDir>C:\Program Files (x86)\Microsoft Visual Studio\COMMON</VSInstallDir>
 
参考自:
https://blog.csdn.net/educast/article/details/9903991
https://blog.csdn.net/a_222850215/article/details/79609520
 
附:
https://stackoverflow.com/questions/13948990/error-msb6006-cl-exe-exited-with-code-2
搜到了这个问题,但是没啥用,我开启了 工具-选项-项目和解决方案-生成并运行

 

但是我看不懂 输出 里的东西。。。

 

又附:

https://daffodil.codeplex.com/

很多帖子提到了这个网址,但是这个codeplex.com(应该是微软办的),于2021年7月(大概是这个时间),永久关闭了,(因为github的兴起)所以很多上古的daffodil相关资料需要到https://web.archive.org/,这里去找

 

又附:

关于调试debug,因为我是VC6 build的,生成的pdb文件应该是旧版的,所以仅有VS2010版的调试器支持,(VS2013 VS2015也可以通过切换到两种兼容模式来使用2010版的调试器,但是2017及之后应该就没有办法了https://stackoverflow.com/questions/34560149/debugging-information-does-not-match-when-using-v60-platform-toolset-inside-vis)

 

又附:

类向导也不能用(如果选v60工具集的话)

https://web.archive.org/web/20210630220834/https://archive.codeplex.com/?p=daffodil

在 VS2010 中调试 VC6 应用程序

我有一个使用 MFC 的 VC6 项目
我在 VS2010 中打开这个项目,并将平台工具配置为 vc60
它可以编译并且工作正常。
但是当我想调试一个 MFC 功能时,VS2010 会打开带有 VS2010 芯片的 mfc 文件,而不是我的应用程序使用的那个在 VC6 安装文件夹中的文件。
你有同样的问题吗?

示例:
我有一个派生自 CDialog
在我的类的 OnInitDialog 中的类我在 CDialog::OnInitDialog(); 行上放置了一个断点
然后我尝试进入。
线程# 446048 留言# 1053006 2013-06-05
这是一个 Visual Studio 错误,当打开的解决方案包含针对不同 MFC 版本的多个项目时会发生。我使用的一种解决方法是使用仅包含单个项目的新解决方案来调试代码。
线程# 446048 留言# 1053163 2013-06-05
 
可能是mfc库版本不同的原因?,不太清楚,暂时就这样吧
 
又附:
发现我这些VC6的程序可以直接用v100(2010)工具集编译生成成功,那我就不用VC6v60工具集了。。
posted @ 2022-04-15 00:09  hrdom  阅读(417)  评论(0编辑  收藏  举报