-waitmutex" exited with code 5. Please verify that you have sufficient rights to run this command.

I don’t know what the problem is but I get this whenever I try to build my game using Visual Studio. I tried cleaning it and I don’t have that much knowledge in coding. I was hoping someone could shed some light in this for me and educate me as to what the heck I am suppose to do. Thanks in advance :slight_smile:

Got the same problem here. Join the club and hang out with me. :slight_smile:

you should build in UE, not in visual studio if im correct

If you have the engine installed in Program Files, don’t. Really, don’t. I never had that problem until last week. I solved it by installing it in an “Unreal Engine” folder directly under C:/ on my SSD.

Edit: And building in the editor still gives the error. You can build in VS just fine, in fact you can see the progress a lot better.

I’ve always been able to (re)compile the code in Visual Studio.

Unlike the topic starter, I don’t have the engine installed in Program Files, it’s even on a secondary drive.

my problem was when I use another disk for project , not C:\ but D:\ for ex

It was fixed for me by a recent update.

Can also be caused by the temporary files.

For me the answer was quite simple -

I had a member of a class with the wrong “UPROPRRTY” values.
When you put “UPROPERTY(EditDefaultsOnly, VisibleAnywhere, Category = “Mesh”)” above your class member, you will get that error. Simply omit one of these keywords (EditDefaultsOnly or VisibleAnywhere) from all of your class member that has the two of them together and you should be good.


version 4.22 here.
This solution still saves big time, after 1 year.
Actually I have UPROPERTY(Transient, Category=XXX), If I remove the category attribute, the build error disappears.
This should be noted as a bug

You have to tell if it is blueprint exposed and/or editor exposed when you specify a category.
Also marking it “VisibleXXX” together with “EditXXX” is silly, those tags are exclusive.

I was missing “& OutExec” on a UFUNCITON declaration (was using ExpandEnumAsExecs = “OutExec”, but was just using a simple enum instead of adding the additional command.


UFUNCTION(BlueprintCallable, Category = "Test", Meta = (ExpandEnumAsExecs = "OutExec"))
        static TestCallbackProxy* TestFunction(FString TestString, TEnumAsByte<EnumCategory1::EnumNameFromCategory1> MyEnumName);


UFUNCTION(BlueprintCallable, Category = "Test", Meta = (ExpandEnumAsExecs = "OutExec"))
        static TestCallbackProxy* TestFunction(FString TestString, TEnumAsByte<EnumCategory1::EnumNameFromCategory1>**& OutExec**);

I know this is late, but in case anyone is still having problems with this here’s how I solved it for a project located on my D drive:

  1. Change security settings in the project folder to allow full control (the tab in the folder’s properties).
  2. Regenerate project files by right clicking on the project file itself.

If that doesn’t work you can also try moving the project to C:\ just to make sure there are no errors in the code (like for example contradicting UPROPERTY attributes as listed above).