Building editor on Linux fails if WindowsPlatform.Compiler is set to Clang

If you modify the *Windows* compiler to be Clang, then linking of libUnrealEditor-InterchangeImport.so fails on *Linux*. It produces a lot of linker errors like “error: undefined symbol: MaterialX_v1_38_5::PATH_LIST_SEPARATOR”.

The source of this issue seems to be that `EnableUsdSdk` in `Engine/Plugins/Runtime/USDCore/Source/UnrealUSDWrapper/UnrealUSDWrapper.Build.cs` checks `Target.WindowsPlatform.Compiler != WindowsCompiler.Clang` without checking `Target.Platform.IsInGroup(UnrealPlatformGroup.Windows)`. I would submit a pull request, but there seems to be an underlying issue where presumably this should still successfully build if the USD SDK is disabled, since we can build successfully on Windows with Clang enabled?

Steps to Reproduce
Modify WindowsPlatform.Compiler to be Clang (e.g. by modifying `Engine/Config/BaseEngine.ini` and adding `Compiler=Clang` to `[/Script/WindowsTargetPlatform.WindowsTargetSettings]`) then attempt to build the editor on Linux

Hello,

Thanks for reporting this.

As of UE 5.6, we no longer disable the USD SDK when the Windows compiler is set as Clang. The commit for this in on GitHub here:

https://github.com/EpicGames/UnrealEngine/commit/7ecb25a4cea356e804a369aa22161abb649a68c7

If you’re able to run 5.6, or simply apply that change to your engine source by removing that `WindowsCompiler.Clang` predicate, that should alleviate the issue you’re seeing.

Separately but somewhat related, we’re aware of some cross-linking issues between Interchange and USDCore in the way that they both attempt to link to MaterialX, and we’re working to clean that up for a future release. At least in your case though, I believe the change in the commit above should be sufficient for now.

Hope that helps!