繁体   English   中英

Windows 10中VS2017找不到fxc.exe

[英]fxc.exe not found by VS2017 in windows 10

我将在Windows 10工作站中使用HelixToolkit.SharpDX和VS2017,当我尝试构建解决方案时,它会在“找不到fxc.exe”时提示Assertion Failed错误。

我已经检查了安装选项,已经包含了Windows SDK,并且我已经下载并再次安装,我可以在“C:\\ Program Files(x86)\\ Windows Kits \\ 10 \\ bin \\ 10.0.16299.0”中看到fxc.exe \\ x64“&”C:\\ Program Files(x86)\\ Windows Kits \\ 10 \\ bin \\ 10.0.16299.0 \\ x86“文件夹,因此它应该可用于任何Windows版本,但不幸的是,报告了相同的错误。

但是,我还在另一台Windows 7机器上安装了VS2017,它工作正常,并且fxc.exe与我的Windows 10工作站位于同一文件夹中,但可以通过VS2017找到它。

在VS2017中是否有任何设置来定位fxc.exe? 或者我该如何解决这个问题?

将Bin \\ 10.0.xxx \\ x86中的fxc.exe复制到Bin \\ x86以解决此问题。 因为HLSL编译工具硬编码了路径。

可以在helix toolkit github页面上找到解决方案。

Visual Studio 2017.Windows 10 SDK。

最新的Windows 10 SDK缺少fxc.exe问题:

将C:\\ Program Files(x86)\\ Windows Kits \\ 10 \\ Bin \\ 10.0.xxx \\ x86中的fxc.exe复制到C:\\ Program Files(x86)\\ Windows Kits \\ 10 \\ bin \\ x86以解决此问题。 因为HLSL编译工具硬编码了路径。

在编写时,这似乎已在Visual Studio 2019 16.0.2中得到修复。 只需确保$(WindowsSDK_ExecutablePath)指向正确的SDK目录以及与Project Properties页面中的Targeted Platform匹配的构建版本。

https://social.msdn.microsoft.com/Forums/windowsdesktop/en-US/a3032567-d8e7-4b01-81b7-0612047a6299/why-do-we-need-to-copypaste-fxcexe-from-bin100xxxxx0x86-to- binx86目录合的?论坛= windowssdk

第二篇帖子回答:

C ++构建过程从Windows SDK目录使用的可执行文件是MIDL.exe,MT.exe和RC.exe。 如果您对可执行文件进行数字签名,那么您也可以在这里找到signtool.exe。 所以我很惊讶它发现了一些正确的关键构建工具,但其他人却找不到。

我的建议是:

1)在Visual Studio 2019 16.0.2(编写本文时的最新版本)或Visual Studio 2019预览(编写本文时为16.1预览版1)中验证您的项目是否存在此问题。 这是检查如果发现这是一个错误,那么它可能已被修复。

2)创建一个全新的项目。 在不触及项目的可执行路径的情况下,尝试创建显示此行为的示例。 它不需要是一个完整的示例,只需足以证明Visual Studio无法找到fxc.exe。

3)如果执行所有这些操作表明Visual Studio无法找到fxc.exe,那么通过Visual Studio 2019将其报告为错误。

但我要提一下,我的最终测试表明Visual Studio 2019可以使用18362,17763和17134 SDK编译HLSL着色器而不会出现任何问题 这些都经过测试,因为这些是我安装的版本。

暂无
暂无

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

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