簡體   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