Hey everyone, while compiling unreal engine from sources under the Rider IDE I face with some compilation errors with a couple of modules, also have some troubles with static analysis errors at Build.cs files.
I’m using the tools below:
OS:
No LSB modules are available.
Distributor ID: Ubuntu
Description: Ubuntu 22.04.1 LTS
Release: 22.04
Codename: jammy
IDE:
JetBrains Rider 2022.3.2
Build #RD-223.8617.53, built on January 25, 2023
Branch:
* commit 5ca9da84c694c6eee288c30a547fcaa1a40aed9b (HEAD -> release, tag: 5.1.1-release, origin/release, origin/HEAD)
|\ Merge: cdaec5b33ea5 8faf2539a6d0
| | Author: UnrealBot <unrealbot@noreply.users.github.com>
| | Date: Tue Feb 7 14:05:43 2023 +0000
| |
| | 5.1.1 release
So the first thing I need to do is to add Engine and Programs folders to exclude list in the Rider Inspection Setting to skip solution wide analysis for these folders, because it leads to a lot of errors and prevents from building a solution.
Is such behavior correct?, or there is a better approach to deal with inspection?
Next issues are related to the ChaosVisualDebugger, HeadlessChaosPerf and ZenDashboard modules compilation.
The first one is a ChaosVisualDebugger module:
Compilation log details:
[116/126] Compile Module.ChaosVisualDebugger.cpp
In file included from ../Intermediate/Build/Linux/B4D820EA/ChaosVisualDebugger/Development/ChaosVisualDebugger/Module.ChaosVisualDebugger.cpp:4:
51>/home/krang/Programming/Cpp/UE/Engine/release/Engine/Source/Programs/ChaosVisualDebugger/Private/Linux/ChaosVisualDebuggerLinux.cpp:5:10: Error : 'UnixCommonStartup.h' file not found
#include "UnixCommonStartup.h"
^~~~~~~~~~~~~~~~~~~~~
1 error generated.
To fix this issue I add the additional private dependency module name to the ChaosVisualDebugger.Build.cs as follows:
Is this fix correct?, and can it be used in the pull request?
The second one is a HeadlessChaosPerf module:
Compilation log details:
[104/128] Compile Module.HeadlessChaosPerf.cpp
In file included from ../Intermediate/Build/Linux/B4D820EA/HeadlessChaosPerf/Development/HeadlessChaosPerf/Module.HeadlessChaosPerf.cpp:2:
In file included from ./Programs/HeadlessChaosPerf/Private/ChaosPerf/PerfTests/ChaosPerfProfilerTests.cpp:2:
In file included from Programs/HeadlessChaosPerf/Private/ChaosPerf/ChaosPerf.h:6:
56>/home/krang/Programming/Cpp/UE/Engine/release/Engine/Source/Programs/HeadlessChaosPerf/Private/ChaosPerf/ChaosPerfProfiling.h:5:10: Error : 'ProfilingDebugging/CSVProfiler.h' file not found
#include "ProfilingDebugging/CSVProfiler.h"
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
1 error generated.
To fix this issue I rename the #include “ProfilingDebugging/CSVProfiler.h” directive in ChaosPerfProfiling.h file as follows:
Is this fix correct?, can it be used in the pull request? It seems that this issue is related to file system case sensitivity, the original file name is in the lower case:
The third one is a ZenDashboard module:
Compilation log details:
[56/68] Compile Module.ZenDashboard.cpp
In file included from ../Intermediate/Build/Linux/B4D820EA/ZenDashboard/Development/ZenDashboard/Module.ZenDashboard.cpp:3:
In file included from ./Programs/ZenDashboard/Private/ZenDashboard.cpp:14:
In file included from Runtime/Core/Public/Windows/WindowsHWrapper.h:7:
81>/home/krang/Programming/Cpp/UE/Engine/release/Engine/Source/Runtime/Core/Public/Microsoft/WindowsHWrapper.h:9:14: Error : 'Microsoft/WindowsHWrapperPrivate.h' file not found
#include "Microsoft/WindowsHWrapperPrivate.h"
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
1 error generated.
It’s related to another #include directive located in WindowsHWrapper.h file
but unfortunately there is no #include “Microsoft/WindowsHWrapperPrivate.h”, can you give me any suggestions how to fix this issue? I think of excluding the ZenDashboard module from the solution, will this be a good choice?
Thanks…