[UE4.22] Mali Offline Compiler Bug

Hi,

I’m trying to use the Mali Offline Compiler to test shaders for Android GLES 2.0. I have installed and setup the path to the Mali Offline Compiler but unfortunately when I use the stats I get this error.

This happens on any material even a completely empty one. Reading the error it seems that the path to the derived cache data isn’t parsed properly since there is a space in the path (something line D:/Epic Games/SoOn)

Also, this seems to be specific to 4.22 as I have quickly tested it in 4.21 and didn’t get the same error in an empty material.

Is there a fix for this?

Regards,
Simon

Upvote, have the exact same problem.
Searched for different compiler versions, etc nothing helped, might possibly be because in 4.22 the mobile preview got reworked, hope it’s gonna be fixed soon.

1 Like

Same here. I guess I will run an older version of the project just do debug the materials

“the mobile preview got reworked” didn’t know that. Then it could certainly be the case.

That’s exactly what I’m doing but it’s not the optimal solution.

I get the same error. Would be nice if this will be fixed in 4.23 .

It would be nice to get an official response from something at Epic as this seems to still be broken in 4.23

There seem to be several issues that came with the rewrite. The Shadercomplexity view is also broken.
The problem in this case seems to be that there are no quotation marks surrounding the engine paths
which creates problem when there are spaces in it. Would you mind reporting it over here: Unreal Engine Community

1 Like

Guys, you just need to remove spaces in UE4 path. Like D:/UnrealEngine instead D:/Unreal Engine

1 Like

Having the exact same issue (v4.26), and you are right, the space in path is the issue.
To solve this annoying problem you have to move/rename your Unreal Engine install folder so that it DOES NOT have any space inside its path. At least that’s what worked for me.

Cheers

1 Like

Hi. Try this code at ‘ShaderCompilerCommon.cpp > CompileOfflineMali()’


// From
CompilerCommand += " " + FPaths::ConvertRelativePathToFull(GLSLSourceFile);

// To
CompilerCommand += " \"" + FPaths::ConvertRelativePathToFull(GLSLSourceFile) + "\"";

I can confirm that re-installing the engine in a path without SPACES fixes this. Tested in 5.1.
In my case I changed from:
C:\Program Files\Epic Games\UE_5.1
To:
C:\Dev\Engines\UE_5.1