作为 SDK 的 Cryengine 最近从提供预制解决方案转变为强制开发人员使用基于 WAF 的构建系统来自动生成 Visual Studio 解决方案。目前,来自 Crytek 的关于每个人在使用新构建系统时遇到的问题的沟通非常少,所以我希望这里的人能够提供帮助。
我正在让 Cry-WAF(Crytek 的基于 WAF 的构建系统)生成解决方案,但是当我打开它时,它提供了一个错误(引用如下),并且在解决方案资源管理器中附加(加载失败)到解决方案中的每个项目。我首先在使用 Cry-WAF 的 msvs.py 脚本生成解决方案时遇到问题,说它无法收集平台/配置的属性,但最终停止并允许使用引用的问题生成解决方案。
对根本原因的通用谷歌搜索建议我尝试启用 IIS,但这并没有解决问题。编辑 .vcxproj 文件表明它们正确列出了与该项目关联的所有文件的路径。解决方案中唯一缺少的似乎只是告诉要使用什么编译器、目标名称、目标路径等的信息。由于我对 WAF 作为构建系统知之甚少,我假设 python 代码 Crytek用来收集这些信息的方法完全失败了。
有人对可能做的事情有什么建议吗?
c:\Program Files (x86)\Steam\SteamApps\common\CRYENGINE\CRYENGINE_pc_eaascode\Solutions.depproj\CryAction.vcxproj : error : 合成产生了单个合成错误。下面提供了根本原因。查看 CompositionException.Errors 属性以获取更多详细信息。
1) 指定的参数超出了有效值的范围。参数名称:索引
导致:尝试获取属性“Microsoft.VisualStudio.Project.VisualC.VCProjectEngine.VCConfigurationMef.VCConfigurationShim”的值时发生异常。
导致:无法从“Microsoft.VisualStudio.Project.VisualC.VCProjectEngine”部分导出“Microsoft.VisualStudio.Project.VisualC.VCProjectEngine.VCConfigurationMef.VCConfigurationShim (ContractName="Microsoft.VisualStudio.Project.VisualC.VCProjectEngine.VCConfigurationShim") .VCConfigurationMef'。元素:Microsoft.VisualStudio.Project.VisualC.VCProjectEngine.VCConfigurationMef.VCConfigurationShim (ContractName="Microsoft.VisualStudio.Project.VisualC.VCProjectEngine.VCConfigurationShim") --> Microsoft.VisualStudio.Project.VisualC.VCProjectEngine.VCConfigurationMef
导致:无法在部分 'Microsoft.VisualStudio.Project.VisualC.VCProjectEngine .VC LegacyEventsTranslator'。元素:Microsoft.VisualStudio.Project.VisualC.VCProjectEngine.VCLegacyEventsTranslator.VCConfiguration (ContractName="Microsoft.VisualStudio.Project.VisualC.VCProjectEngine.VCConfigurationShim") --> Microsoft.VisualStudio.Project.VisualC.VCProjectEngine.VCLegacyEventsTranslator
导致:无法从“Microsoft.VisualStudio.Project.VisualC.VCProjectEngine.VCLegacyEventsTranslator”部分导出“Microsoft.VisualStudio.Project.VisualC.VCProjectEngine.VCLegacyEventsTranslator (ContractName="Microsoft.VisualStudio.Project.VisualC.VCProjectEngine.VCLegacyEventsTranslator") '。元素:Microsoft.VisualStudio.Project.VisualC.VCProjectEngine.VCLegacyEventsTranslator (ContractName="Microsoft.VisualStudio.Project.VisualC.VCProjectEngine.VCLegacyEventsTranslator") --> Microsoft.VisualStudio.Project.VisualC.VCProjectEngine.VClegacyEventsTranslator
导致:无法在部分 'Microsoft.VisualStudio.Project.VisualC.VCProjectEngine .VCConfigurationMef'。元素:Microsoft.VisualStudio.Project.VisualC.VCProjectEngine.VCConfigurationMef.EventsTranslator (ContractName="Microsoft.VisualStudio.Project.VisualC.VCProjectEngine.VCLegacyEventsTranslator") --> Microsoft.VisualStudio.Project.VisualC.VCProjectEngine.VCConfigurationMef
导致:无法从“Microsoft.VisualStudio.Project.VisualC.VCProjectEngine.VCConfigurationMef”部分导出“Microsoft.VisualStudio.Project.VisualC.VCProjectEngine.VCConfigurationMef.VCConfigurationShim (ContractName="Microsoft.VisualStudio.ProjectSystem.ConfiguredProject.HostObject")” '。元素:Microsoft.VisualStudio.Project.VisualC.VCProjectEngine.VCConfigurationMef.VCConfigurationShim (ContractName="Microsoft.VisualStudio.ProjectSystem.ConfiguredProject.HostObject") --> Microsoft.VisualStudio.Project.VisualC.VCProjectEngine.VCConfigurationMef