安装 VS 2012 后无法编译我的 c++ 项目
Posted
技术标签:
【中文标题】安装 VS 2012 后无法编译我的 c++ 项目【英文标题】:unable to compile my c++ project after install VS 2012 【发布时间】:2014-03-14 14:05:27 【问题描述】:错误 1 错误 MSB4018:“MIDL”任务意外失败。 System.TypeInitializationException:类型初始化程序 'Microsoft.Build.Utilities.FileTracker' 抛出异常。 ---> System.IO.FileNotFoundException:系统找不到文件 指定的。 (来自 HRESULT 的异常:0x80070002)在 System.Runtime.InteropServices.Marshal.ThrowExceptionForHRInternal(Int32 错误代码,IntPtr 错误信息)在 System.Runtime.InteropServices.Marshal.ThrowExceptionForHR(Int32 错误代码)在 Microsoft.Build.Shared.NativeMethodsShared.ThrowExceptionForErrorCode(Int32 错误代码)在 Microsoft.Build.Shared.NativeMethodsShared.GetShortFilePath(字符串 路径)在 Microsoft.Build.Utilities.FileTracker..cctor() --- 结束 内部异常堆栈跟踪 --- 在 Microsoft.Build.CPPTasks.TrackedVCToolTask.ComputeOutOfDateSources() 在 Microsoft.Build.CPPTasks.TrackedVCToolTask.SkipTaskExecution() 在 Microsoft.Build.Utilities.ToolTask.Execute() 在 Microsoft.Build.CPPTasks.TrackedVCToolTask.Execute() 在 Microsoft.Build.BackEnd.TaskExecutionHost.Microsoft.Build.BackEnd.ITaskExecutionHost.Execute() 在 Microsoft.Build.BackEnd.TaskBuilder.d__20.MoveNext() C:\程序文件 (x86)\MSBuild\Microsoft.Cpp\v4.0\V110\Microsoft.CppCommon.targets 1179
【问题讨论】:
哇。我看不懂。 谁能帮帮我!!! 【参考方案1】:这个问题会影响所有项目吗?
从旧版本的 VS 移植代码时,我遇到了类似的问题。根据我的经验,产生最多的错误是因为路径。我不记得细节,但是显式使用输出路径(在旧版本中完成)会产生问题,因为项目转换机制尝试使用宏,结果是空的、格式错误的路径。
我的建议是验证与输出有关的所有设置。确保 OutputPath、TargetDir 和其他设置正确。尝试更改设置并使用从父级继承。 创建相同类型的空项目并比较两者的属性。
【讨论】:
以上是关于安装 VS 2012 后无法编译我的 c++ 项目的主要内容,如果未能解决你的问题,请参考以下文章
VS2012 使用 C++ 编译器 2012 年 11 月 CTP (v120) 强调错误错误
为啥我无法在 win64 上使用 boost 1.54 编译 VS2012 C++ 代码?