liamkf / Unreal_FASTBuild

Allows UnrealEngine to be built with FASTBuild for VS2015/VS2017 and Windows 10.
MIT License
180 stars 71 forks source link

Is clui.dll necessary? #2

Closed samhocevar closed 8 years ago

samhocevar commented 8 years ago

The file '$Root$/1033/clui.dll' is language-dependent and if the user installed Visual Studio in French it will be located in '$Root$/1036/clui.dll' instead. As FASTBuild does not have wildcards it might be necessary to discover that file manually in C#… but I also found out that everything works fine if I just get rid of the two lines mentioning it. So I’m wondering, is it absolutely necessary to reference it?

liamkf commented 8 years ago

Hi there!

Unfortunately it is required, but only for distributed builds. The whole the compiler 'extra files' setup is only used when -dist is passed to fbuild. Without those files you'll get "EXEC : fatal error C1510: Cannot load language resource clui.dll." coming back from remote machines when trying to compile.

But that hard coded 1033 annoyed me too, but I didn't see a trivial way to see what languages were installed and I only have 1033 installed unfortunately. Other than searching through the VC path for the files, I would also suspect it's hiding somewhere in the registry but didn't see anything under the MSBuild or Visual Studio values when I looked.

If everyone there has the French version installed the hacky hardcode to 1036 might work best... :)

samhocevar commented 8 years ago

Sounds like FASTBuild itself could help with a wildcard feature, then. I’ll have a look how easy that would be to implement.

samhocevar commented 8 years ago

By the way, nice work with this piece of code; I know there’s a lot of hardcoded stuff, but it’s a really good starting point and we’re gonna try and help improve it as much as we can.

liamkf commented 8 years ago

Happily thanks to @jairbubbles over on https://github.com/liamkf/msfastbuild it appears there is in fact a registry value! I just pushed the small change that will look it up, so hopefully it works for you. :) edit: maybe not, I guess that registry value won't necessarily be 1036 if French is installed... darn.

liamkf commented 8 years ago

Ok I brought over what I did for msfastbuild and I think it should work for now. Please let me know if it does the trick for you! :)

samhocevar commented 8 years ago

I believe this can be closed soon. There is a problem in commit a94b83a, but with https://github.com/liamkf/Unreal_FASTBuild/pull/11 it works like a charm again!

liamkf commented 8 years ago

Ah whoops, thanks for the fix! :)