[UE5][Linux] Unable to open project like UnrealPak, UnrealInsight and every program using UBT in C++

Hello everyone,

I am working on a Linux architecture and using Rider 2024.1.4. I am seeking some assistance regarding the use of Rider with Unreal Engine, particularly for projects using the UBT build system, such as Unreal Insight or SlateViewer. Currently, I am unable to view or edit the source code of these programs. Why can't these projects be compiled, debugged, or opened in Rider? Rider on Windows works very well for opening these projects.

I find this particularly frustrating because, even though Rider strives to support a project as enormous as Unreal Engine in C++, there seem to be significant limitations. Rider was not originally designed for C++, whereas CLion seems to be better suited for this type of project. Unreal Engine is fundamentally not a .NET project but rather a C++ project, even though UBT and a few other programs are .NET. Wouldn't the core structure of Unreal Engine be better supported in CLion?

I purchased a personal license of dotUltimate for Rider on my Linux machine at home after testing it at work on Windows, and I must say that Rider on Windows is excellent. It's unfortunate that Unreal Engine 5 does not support console dev kits, but for my personal projects at home, I don't need them, so that was acceptable to me. However, if I cannot manage the programs that are part of Unreal Engine, this becomes a major problem.

Thank you in advance for your insights and assistance.

0
22 comments

Hello Meradrin,

Thank you for contacting Rider support. 
As I can see, sources for these projects are only included in engine built from sources. Is your engine on Linux built from sources?

If so, you should be able to find these programs in solution explorer under Programs node. You need to open the engine project in Rider (select the default.uprojectdirs in the Open dialog) for that.

You should be able to build and run/debug it.  Would you mind double-checking if you use source version of the engine on Linux? Do you have project files under <YourEngine>\Engine\Source\Programs\UnrealInsights

About bringing Unreal Engine support to Rider instead of CLion.

Rider's C++ engine is completely different from CLion's engine. It was designed from the ground up to work with Unreal Engine and VS C++ projects and leverage MSBuild/MSVC (because Unreal Engine itself heavily depends on MSVC). We are actively working on bringing Rider's C++ engine features to CLion and vice versa, but in the foreseeable future, Rider and CLion will remain separate products.

We had strong reasons for bringing Unreal Engine support to Rider instead of CLion. You can find more in-depth answer on that question in the following thread: Why CLion doesn't support UE4 out-of-the-box?

In short:
• Generally. Rider is our offer for .NET and game development (Unity, Unreal Engine) while CLion is our offer for cross-platform C++ development;
• Technically. Rider and CLion use very different C++ engines. Rider uses a C++ language engine designed for Unreal Engine projects (you can think of it as modified ReSharper C++ built into Rider) while CLion is a general-purpose C++ IDE. Rider uses sln and uproject project models and leverages MSBuild. At the moment, this engine does not support general-purpose (CMake/Makefile-based) projects supported by CLion.

Hope I answered the question.

Have a nice day! 

0

Hello Dmitry,

Thank you for your detailed response.

Opening the project with default.uprojectdirs indeed allowed me to access the engine project correctly. Previously, I was working directly with a .uproject file, and the engine source code was not copied into the same directory. On Windows, at work, the engine source code is included with the game source code, but on Linux, I was testing only on a small project.

However, I have encountered a problem. I can't launch UnrealInsight on its own. In the multilaunch, I only see Engine, my project, and all C# programs. For example, I can open it manually and then attach to it remotely, which seems to work well, but this pipeline is quite impractical. I can't see myself adding while(true) loops at the beginning just to wait for the attachment before continuing the program flow.

Do you have a solution to make this process smoother?

Thank you in advance for your help.

Best regards,
Meradrin

0

Hello Meradrin,

Do you mean you have no UnrealInsights in this list?

Right-click on it and select “Run”:

In the multilaunch configuration the UnrealInsights is there in the list of available programs:
 

Would you mind double-checking it? If this is not the same for you, I suggest trying this:

  • Open default.uprojectdirs and launch Unreal Editor via Engine run configuration;
  • Unreal Welcome screen would open. Open your project from this dialog.
  • Check if that helps. Are the programs available in Rider menus now?

Have a nice day!

0

Hello Dmitry,

Thank you for your response and for providing the procedure.

Unfortunately, the "Run" option you mentioned does not appear in my version of Rider. I have tried both the old and new UI, but the issue persists. I also recreated a Rider project with only the engine, but this did not resolve the problem. On Linux, I do not have this option, while for the same project on Windows, it is available.

But I see it for the engine or C# project.

And when I try Run Multiple

Only engine and a tone of C# project.

Could you please advise on what might be causing this discrepancy and how I might resolve it?

Edit: After playing around with the Run/Debug Configurations, I was able to add another configuration to the "Engine" project, which I named "ManualTest." As you can see, I couldn't select the other C++ projects, but by forcing the target to the executable of another project, I was able to launch the debugger and attach to it. However, this feels more like a hack than a proper solution.

I suppose a plugin or a macro might offer a solution, but having to do all this to fix the Linux target issue is quite frustrating and feels rather ridiculous.

Thank you for your assistance.

Best regards,
Meradrin

 

0

Hello Meradrin,

That looks weird. I suppose project files generation failed for some reason. Do you use the latest build? (2024.1.4. Can be checked in Help | About). If not, I suggest trying to update Rider. 

If you are on 2024.1.4 already, lets take a deeper look at your case. I would appreciate it if you could share/collect the following diagnostic information. Please create a directory “ToUpload” somewhere on your machine.

Dump Rider project files

  • Open the project you created by running the engine built from sources in Rider by selecting the {Game}.uproject file in the Open dialog;
  • Wait for all the background tasks to finish;
  • Invoke File | Save All;
  • Close Rider (close the welcome screen also);
  • Create ToUpload/dumpProjectFiles folder;
  • Open game project folder in your OS explorer (for ex. Files);
  • Copy the {GameProject}/.idea folder to ToUpload/dumpProjectFiles;
  • Copy the {GameProject}/Intermediate/ProjectFiles/.Rider folder to ToUpload/dumpProjectFiles;

Invoke project files generation manually and share UBT output

  • Create ToUpload/ProjectFilesGeneration launch;
  • Clear everything from the /Users⁩/⁨{User}/⁨Library/⁨Logs⁩/JetBrains/Rider{version} folder;
  • Open project in Rider again;
  • Select Run | Edit Configurations;
  • Select UnrealBuildTool run configuration;
  • Paste -Rider -Automated -Minimize -Platforms=Linux -TargetTypes=Game+Program -TargetConfigurations=Development /Path/To/{Game}.uproject to Program arguments field:

  • Press “Run” right from the bottom of this dialog:
  • Copy the output from Rider Run tool window and save it into ToUpload/ProjectFilesGeneration/UBTLaunch.txt
  • Find the Log_GPF.txt file mentioned in that output and put a copy of it to ToUpload/ProjectFilesGeneration/. 
    For ex. I have such a row in my output: Log file: /Users/Dmitry.Kazantsev/UEThere/UE/UnrealEngine/Engine/Programs/UnrealBuildTool/Log_GPF.txt

Share Rider logs

  • Select Help | Diagnostic Tools | Choose Trace Scenarios;
  • Tick UnrealBuildAndTargetFiles and UnrealProjectModel options, then press OK;
  • Close Rider (close the welcome screen also);
  • Delete the {GameProject}/.idea folder;
  • Open project in Rider;
  • Wait for the background tasks to finish;
  • Ensure the issue remains;
  • Collect logs via Help | Collect Logs and Diagnostic data;
  • Put the generated archive to ToUpload/ folder;

Upload the archive

  • Archive the ToUpload folder;
  • Upload the archive it to the Upload Service and let me know the Upload ID.

Have a nice day!

0

Hello Dmitry,

Thank you for your continued assistance.

As I mentioned in my first message, I am working with Rider version 2024.1.4. Currently, I don't have a project where I've combined the engine source code and my game in the same directory. I have two separate instances: default.uprojectdirs and my Test.uproject, which I open separately. Right now, I'm focusing on getting the default.uprojectdirs to work correctly.

To help diagnose the issue further, I will create and upload three different folder setups:

  • default.uprojectdirs only
  • default.uprojectdirs + {game}.uproject
  • {game}.uproject

Would you prefer just one of these versions? I plan to do this later this evening after my workday.

Thank you for your support.

Best regards,
Meradrin

0

Hello Meradrin,

One setup would be fine. The main think I need to be sure with it that your game project targets engine built from sources. 

So, ideally this scenario:

  • You open default.uproject dirs in Rider and launch the Engine;
  • You create UE project from the UE instance launched from Rider. As a result you have the dedicated game project with its own .uproject file;
  • Open this exact .uproject file. 
  • Once you ensured the issue is reproduced, you can go with those steps I mentioned above.
  • I suspect you already have a game project created from UE instance built from sources, right? You can use this game project as a starting point for the steps I described.

Have a nice day!

 

0

Hello Dmitry,

Thank you for your continued assistance.

Here is the code you can use to upload my data: 2024_07_16_8tRVHYE2PuBPfKvJY1kDSY

Please keep in mind that the UBTLaunch.txt was very slow because I ran it in debug mode. Otherwise, I couldn't copy the output logs as Rider would close after the generation. Therefore, I set a breakpoint at the end to keep the log. But in average it is 10s.

Thank you for your support.

Best regards,
Meradrin

0

Hello Meradrin,

Would you mind sharing what configuration you have in these files?
/home/meradrin/UnrealEngine/Engine/Saved/UnrealBuildTool/BuildConfiguration.xml
/home/meradrin/.config/Unreal Engine/UnrealBuildTool/BuildConfiguration.xml

You can share screenshots or upload these files in the same way.

Thank you!

0

Hello Dmitry,

Thank you for your continued assistance.

Currently, my BuildConfiguration.xml files are empty, containing just:

<Configuration> </Configuration>

Normally, I like to use various settings such as disabling unity build on the files I have checked out or using incremental build. However, at the moment, I am trying to get the basics working before attempting to enable things like FastBuild or other configurations.

Thank you for your support.

Best regards,
Meradrin

0
Hello Meradrin,

Got it! Please, also share these files: Intermediate/TargetInfo.<Engine/GameName>.json

Thank you for your cooperation.
Regards, Dmitry.
0

Hello Dmitry,

Engine:

{
	"Targets": [
		{
			"Name": "GameplayGraphTests",
			"Path": "../Plugins/Experimental/GameplayGraph/Tests/GameplayGraphTests.Target.cs",
			"Type": "Program"
		},
		{
			"Name": "StateGraphTests",
			"Path": "../Plugins/Experimental/StateGraph/Tests/StateGraphTests/StateGraphTests.Target.cs",
			"Type": "Program"
		},
		{
			"Name": "AutoRTFMTests",
			"Path": "../Source/Programs/AutoRTFMTests/AutoRTFMTests.Target.cs",
			"Type": "Program"
		},
		{
			"Name": "BaseTextureBuildWorker",
			"Path": "../Source/Programs/BaseTextureBuildWorker/BaseTextureBuildWorker.Target.cs",
			"Type": "Program"
		},
		{
			"Name": "BenchmarkTool",
			"Path": "../Source/Programs/BenchmarkTool/BenchmarkTool.Target.cs",
			"Type": "Program"
		},
		{
			"Name": "BlankProgram",
			"Path": "../Source/Programs/BlankProgram/BlankProgram.Target.cs",
			"Type": "Program"
		},
		{
			"Name": "BuildPatchTool",
			"Path": "../Source/Programs/BuildPatchTool/BuildPatchTool.Target.cs",
			"Type": "Program"
		},
		{
			"Name": "ChaosUserDataPTTests",
			"Path": "../Source/Programs/ChaosUserDataPTTests/ChaosUserDataPTTests.Target.cs",
			"Type": "Program"
		},
		{
			"Name": "ChaosVisualDebugger",
			"Path": "../Source/Programs/ChaosVisualDebugger/ChaosVisualDebugger.Target.cs",
			"Type": "Program"
		},
		{
			"Name": "CmdLink",
			"Path": "../Source/Programs/CmdLink/CmdLink.Target.cs",
			"Type": "Program"
		},
		{
			"Name": "CrashReportClient",
			"Path": "../Source/Programs/CrashReportClient/CrashReportClient.Target.cs",
			"Type": "Program"
		},
		{
			"Name": "CrashReportClientEditor",
			"Path": "../Source/Programs/CrashReportClient/CrashReportClientEditor.Target.cs",
			"Type": "Program"
		},
		{
			"Name": "DerivedDataTool",
			"Path": "../Source/Programs/DerivedDataTool/DerivedDataTool.Target.cs",
			"Type": "Program"
		},
		{
			"Name": "DatasmithUE4ArchiCAD",
			"Path": "../Source/Programs/Enterprise/Datasmith/DatasmithARCHICADExporter/DatsmithUE4ArchiCAD/DatasmithUE4ArchiCAD.Target.cs",
			"Type": "Program"
		},
		{
			"Name": "DatasmithArchiCAD",
			"Path": "../Source/Programs/Enterprise/Datasmith/DatasmithARCHICADExporter/UBTModules/DatasmithArchiCAD.Target.cs",
			"Type": "Program"
		},
		{
			"Name": "DatasmithCADWorker",
			"Path": "../Source/Programs/Enterprise/Datasmith/DatasmithCADWorker/DatasmithCADWorker.Target.cs",
			"Type": "Program"
		},
		{
			"Name": "DatasmithFacadeCSharp",
			"Path": "../Source/Programs/Enterprise/Datasmith/DatasmithFacadeCSharp/DatasmithFacadeCSharp.Target.cs",
			"Type": "Program"
		},
		{
			"Name": "DatasmithMax2017",
			"Path": "../Source/Programs/Enterprise/Datasmith/DatasmithMaxExporter/DatasmithMax2017.Target.cs",
			"Type": "Program"
		},
		{
			"Name": "DatasmithMax2018",
			"Path": "../Source/Programs/Enterprise/Datasmith/DatasmithMaxExporter/DatasmithMax2018.Target.cs",
			"Type": "Program"
		},
		{
			"Name": "DatasmithMax2019",
			"Path": "../Source/Programs/Enterprise/Datasmith/DatasmithMaxExporter/DatasmithMax2019.Target.cs",
			"Type": "Program"
		},
		{
			"Name": "DatasmithMax2020",
			"Path": "../Source/Programs/Enterprise/Datasmith/DatasmithMaxExporter/DatasmithMax2020.Target.cs",
			"Type": "Program"
		},
		{
			"Name": "DatasmithMax2021",
			"Path": "../Source/Programs/Enterprise/Datasmith/DatasmithMaxExporter/DatasmithMax2021.Target.cs",
			"Type": "Program"
		},
		{
			"Name": "DatasmithMax2022",
			"Path": "../Source/Programs/Enterprise/Datasmith/DatasmithMaxExporter/DatasmithMax2022.Target.cs",
			"Type": "Program"
		},
		{
			"Name": "DatasmithMax2023",
			"Path": "../Source/Programs/Enterprise/Datasmith/DatasmithMaxExporter/DatasmithMax2023.Target.cs",
			"Type": "Program"
		},
		{
			"Name": "DatasmithMax2024",
			"Path": "../Source/Programs/Enterprise/Datasmith/DatasmithMaxExporter/DatasmithMax2024.Target.cs",
			"Type": "Program"
		},
		{
			"Name": "DatasmithMax2025",
			"Path": "../Source/Programs/Enterprise/Datasmith/DatasmithMaxExporter/DatasmithMax2025.Target.cs",
			"Type": "Program"
		},
		{
			"Name": "DatasmithNavisworks2019",
			"Path": "../Source/Programs/Enterprise/Datasmith/DatasmithNavisworksExporter/UBTModules/DatasmithNavisworks2019.Target.cs",
			"Type": "Program"
		},
		{
			"Name": "DatasmithNavisworks2020",
			"Path": "../Source/Programs/Enterprise/Datasmith/DatasmithNavisworksExporter/UBTModules/DatasmithNavisworks2020.Target.cs",
			"Type": "Program"
		},
		{
			"Name": "DatasmithNavisworks2021",
			"Path": "../Source/Programs/Enterprise/Datasmith/DatasmithNavisworksExporter/UBTModules/DatasmithNavisworks2021.Target.cs",
			"Type": "Program"
		},
		{
			"Name": "DatasmithNavisworks2022",
			"Path": "../Source/Programs/Enterprise/Datasmith/DatasmithNavisworksExporter/UBTModules/DatasmithNavisworks2022.Target.cs",
			"Type": "Program"
		},
		{
			"Name": "DatasmithNavisworks2023",
			"Path": "../Source/Programs/Enterprise/Datasmith/DatasmithNavisworksExporter/UBTModules/DatasmithNavisworks2023.Target.cs",
			"Type": "Program"
		},
		{
			"Name": "DatasmithNavisworks2024",
			"Path": "../Source/Programs/Enterprise/Datasmith/DatasmithNavisworksExporter/UBTModules/DatasmithNavisworks2024.Target.cs",
			"Type": "Program"
		},
		{
			"Name": "DatasmithRevit2018",
			"Path": "../Source/Programs/Enterprise/Datasmith/DatasmithRevitExporter/DatasmithRevit2018.Target.cs",
			"Type": "Program"
		},
		{
			"Name": "DatasmithRevit2019",
			"Path": "../Source/Programs/Enterprise/Datasmith/DatasmithRevitExporter/DatasmithRevit2019.Target.cs",
			"Type": "Program"
		},
		{
			"Name": "DatasmithRevit2020",
			"Path": "../Source/Programs/Enterprise/Datasmith/DatasmithRevitExporter/DatasmithRevit2020.Target.cs",
			"Type": "Program"
		},
		{
			"Name": "DatasmithRevit2021",
			"Path": "../Source/Programs/Enterprise/Datasmith/DatasmithRevitExporter/DatasmithRevit2021.Target.cs",
			"Type": "Program"
		},
		{
			"Name": "DatasmithRevit2022",
			"Path": "../Source/Programs/Enterprise/Datasmith/DatasmithRevitExporter/DatasmithRevit2022.Target.cs",
			"Type": "Program"
		},
		{
			"Name": "DatasmithRevit2023",
			"Path": "../Source/Programs/Enterprise/Datasmith/DatasmithRevitExporter/DatasmithRevit2023.Target.cs",
			"Type": "Program"
		},
		{
			"Name": "DatasmithRhino6",
			"Path": "../Source/Programs/Enterprise/Datasmith/DatasmithRhinoExporter/DatasmithRhino6.Target.cs",
			"Type": "Program"
		},
		{
			"Name": "DatasmithRhino7",
			"Path": "../Source/Programs/Enterprise/Datasmith/DatasmithRhinoExporter/DatasmithRhino7.Target.cs",
			"Type": "Program"
		},
		{
			"Name": "DatasmithRhino8",
			"Path": "../Source/Programs/Enterprise/Datasmith/DatasmithRhinoExporter/DatasmithRhino8.Target.cs",
			"Type": "Program"
		},
		{
			"Name": "DatasmithSDK",
			"Path": "../Source/Programs/Enterprise/Datasmith/DatasmithSDK/DatasmithSDK.Target.cs",
			"Type": "Program"
		},
		{
			"Name": "DatasmithSketchUpRuby2019",
			"Path": "../Source/Programs/Enterprise/Datasmith/DatasmithSketchUpRubyExporter/DatasmithSketchUpRuby2019.Target.cs",
			"Type": "Program"
		},
		{
			"Name": "DatasmithSketchUpRuby2020",
			"Path": "../Source/Programs/Enterprise/Datasmith/DatasmithSketchUpRubyExporter/DatasmithSketchUpRuby2020.Target.cs",
			"Type": "Program"
		},
		{
			"Name": "DatasmithSketchUpRuby2021",
			"Path": "../Source/Programs/Enterprise/Datasmith/DatasmithSketchUpRubyExporter/DatasmithSketchUpRuby2021.Target.cs",
			"Type": "Program"
		},
		{
			"Name": "DatasmithSketchUpRuby2022",
			"Path": "../Source/Programs/Enterprise/Datasmith/DatasmithSketchUpRubyExporter/DatasmithSketchUpRuby2022.Target.cs",
			"Type": "Program"
		},
		{
			"Name": "DatasmithSketchUpRuby2023",
			"Path": "../Source/Programs/Enterprise/Datasmith/DatasmithSketchUpRubyExporter/DatasmithSketchUpRuby2023.Target.cs",
			"Type": "Program"
		},
		{
			"Name": "DatasmithSketchUpRuby2024",
			"Path": "../Source/Programs/Enterprise/Datasmith/DatasmithSketchUpRubyExporter/DatasmithSketchUpRuby2024.Target.cs",
			"Type": "Program"
		},
		{
			"Name": "DatasmithSolidworks2021",
			"Path": "../Source/Programs/Enterprise/Datasmith/DatasmithSolidworksExporter/DatasmithSolidworks2021.Target.cs",
			"Type": "Program"
		},
		{
			"Name": "EpicWebHelper",
			"Path": "../Source/Programs/EpicWebHelper/EpicWebHelper.Target.cs",
			"Type": "Program"
		},
		{
			"Name": "HeadlessChaos",
			"Path": "../Source/Programs/HeadlessChaos/HeadlessChaos.Target.cs",
			"Type": "Program"
		},
		{
			"Name": "HeadlessChaosPerf",
			"Path": "../Source/Programs/HeadlessChaosPerf/HeadlessChaosPerf.Target.cs",
			"Type": "Program"
		},
		{
			"Name": "HordeTest",
			"Path": "../Source/Programs/Horde/Samples/HordeTest/HordeTest.Target.cs",
			"Type": "Program"
		},
		{
			"Name": "UnrealLaunchDaemon",
			"Path": "../Source/Programs/IOS/UnrealLaunchDaemon/UnrealLaunchDaemon.Target.cs",
			"Type": "Program"
		},
		{
			"Name": "InterchangeWorker",
			"Path": "../Source/Programs/InterchangeWorker/InterchangeWorker.Target.cs",
			"Type": "Program"
		},
		{
			"Name": "LiveCodingConsole",
			"Path": "../Source/Programs/LiveCodingConsole/LiveCodingConsole.Target.cs",
			"Type": "Program"
		},
		{
			"Name": "LiveLinkHub",
			"Path": "../Source/Programs/LiveLinkHub/LiveLinkHub.Target.cs",
			"Type": "Program"
		},
		{
			"Name": "FoundationTests",
			"Path": "../Source/Programs/LowLevelTests/FoundationTests.Target.cs",
			"Type": "Program"
		},
		{
			"Name": "DsymExporter",
			"Path": "../Source/Programs/Mac/DsymExporter/DsymExporter.Target.cs",
			"Type": "Program"
		},
		{
			"Name": "UnrealAtoS",
			"Path": "../Source/Programs/Mac/UnrealAtoS/UnrealAtoS.Target.cs",
			"Type": "Program"
		},
		{
			"Name": "UnrealEditorServices",
			"Path": "../Source/Programs/Mac/UnrealEditorServices/UnrealEditorServices.Target.cs",
			"Type": "Program"
		},
		{
			"Name": "NetworkPredictionTests",
			"Path": "../Source/Programs/NetworkPredictionTests/NetworkPredictionTests.Target.cs",
			"Type": "Program"
		},
		{
			"Name": "ReplicationSystemLowLevelTests",
			"Path": "../Source/Programs/ReplicationSystemLowLevelTests/ReplicationSystemLowLevelTests.Target.cs",
			"Type": "Program"
		},
		{
			"Name": "ReplicationSystemTest",
			"Path": "../Source/Programs/ReplicationSystemTest/ReplicationSystemTest.Target.cs",
			"Type": "Program"
		},
		{
			"Name": "ShaderCompileWorker",
			"Path": "../Source/Programs/ShaderCompileWorker/ShaderCompileWorker.Target.cs",
			"Type": "Program"
		},
		{
			"Name": "DotNetPerforceLib",
			"Path": "../Source/Programs/Shared/EpicGames.Perforce.Native/DotNetPerforceLib.Target.cs",
			"Type": "Program"
		},
		{
			"Name": "SlateUGS",
			"Path": "../Source/Programs/SlateUGS/SlateUGS.Target.cs",
			"Type": "Program"
		},
		{
			"Name": "SlateViewer",
			"Path": "../Source/Programs/SlateViewer/SlateViewer.Target.cs",
			"Type": "Program"
		},
		{
			"Name": "SwitchboardListener",
			"Path": "../Source/Programs/SwitchboardListener/SwitchboardListener.Target.cs",
			"Type": "Program"
		},
		{
			"Name": "SwitchboardListenerCmd",
			"Path": "../Source/Programs/SwitchboardListener/SwitchboardListenerCmd.Target.cs",
			"Type": "Program"
		},
		{
			"Name": "SwitchboardListenerTests",
			"Path": "../Source/Programs/SwitchboardListener/SwitchboardListenerTests.Target.cs",
			"Type": "Program"
		},
		{
			"Name": "SwitchboardListenerHelper",
			"Path": "../Source/Programs/SwitchboardListenerHelper/SwitchboardListenerHelper.Target.cs",
			"Type": "Program"
		},
		{
			"Name": "SymsLibDump",
			"Path": "../Source/Programs/SymsLibDump/SymsLibDump.Target.cs",
			"Type": "Program"
		},
		{
			"Name": "TestPAL",
			"Path": "../Source/Programs/TestPAL/TestPAL.Target.cs",
			"Type": "Program"
		},
		{
			"Name": "ToolMenusTests",
			"Path": "../Source/Programs/ToolMenusTests/ToolMenusTests.Target.cs",
			"Type": "Program"
		},
		{
			"Name": "TraceAnalyzer",
			"Path": "../Source/Programs/TraceAnalyzer/TraceAnalyzer.Target.cs",
			"Type": "Program"
		},
		{
			"Name": "UninstallHelper",
			"Path": "../Source/Programs/UninstallHelper/UninstallHelper.Target.cs",
			"Type": "Program"
		},
		{
			"Name": "UbaAgent",
			"Path": "../Source/Programs/UnrealBuildAccelerator/UbaAgent.Target.cs",
			"Type": "Program"
		},
		{
			"Name": "UbaCli",
			"Path": "../Source/Programs/UnrealBuildAccelerator/UbaCli.Target.cs",
			"Type": "Program"
		},
		{
			"Name": "UbaDetours",
			"Path": "../Source/Programs/UnrealBuildAccelerator/UbaDetours.Target.cs",
			"Type": "Program"
		},
		{
			"Name": "UbaHost",
			"Path": "../Source/Programs/UnrealBuildAccelerator/UbaHost.Target.cs",
			"Type": "Program"
		},
		{
			"Name": "UbaStorageProxy",
			"Path": "../Source/Programs/UnrealBuildAccelerator/UbaStorageProxy.Target.cs",
			"Type": "Program"
		},
		{
			"Name": "UbaTest",
			"Path": "../Source/Programs/UnrealBuildAccelerator/UbaTest.Target.cs",
			"Type": "Program"
		},
		{
			"Name": "UbaTestApp",
			"Path": "../Source/Programs/UnrealBuildAccelerator/UbaTestApp.Target.cs",
			"Type": "Program"
		},
		{
			"Name": "UbaVisualizer",
			"Path": "../Source/Programs/UnrealBuildAccelerator/UbaVisualizer.Target.cs",
			"Type": "Program"
		},
		{
			"Name": "UnrealFrontend",
			"Path": "../Source/Programs/UnrealFrontend/UnrealFrontend.Target.cs",
			"Type": "Program"
		},
		{
			"Name": "UnrealInsights",
			"Path": "../Source/Programs/UnrealInsights/UnrealInsights.Target.cs",
			"Type": "Program"
		},
		{
			"Name": "UnrealLightmass",
			"Path": "../Source/Programs/UnrealLightmass/UnrealLightmass.Target.cs",
			"Type": "Program"
		},
		{
			"Name": "UnrealMultiUserServer",
			"Path": "../Source/Programs/UnrealMultiUserServer/UnrealMultiUserServer.Target.cs",
			"Type": "Program"
		},
		{
			"Name": "UnrealMultiUserSlateServer",
			"Path": "../Source/Programs/UnrealMultiUserSlateServer/UnrealMultiUserSlateServer.Target.cs",
			"Type": "Program"
		},
		{
			"Name": "UnrealObjectPtrTool",
			"Path": "../Source/Programs/UnrealObjectPtrTool/UnrealObjectPtrTool.Target.cs",
			"Type": "Program"
		},
		{
			"Name": "UnrealPackageTool",
			"Path": "../Source/Programs/UnrealPackageTool/UnrealPackageTool.Target.cs",
			"Type": "Program"
		},
		{
			"Name": "UnrealPak",
			"Path": "../Source/Programs/UnrealPak/UnrealPak.Target.cs",
			"Type": "Program"
		},
		{
			"Name": "UnrealRecoverySvc",
			"Path": "../Source/Programs/UnrealRecoverySvc/UnrealRecoverySvc.Target.cs",
			"Type": "Program"
		},
		{
			"Name": "UnrealVersionSelector",
			"Path": "../Source/Programs/UnrealVersionSelector/UnrealVersionSelector.Target.cs",
			"Type": "Program"
		},
		{
			"Name": "UnrealVirtualizationTool",
			"Path": "../Source/Programs/UnrealVirtualizationTool/UnrealVirtualizationTool.Target.cs",
			"Type": "Program"
		},
		{
			"Name": "Unsync",
			"Path": "../Source/Programs/Unsync/Unsync.Target.cs",
			"Type": "Program"
		},
		{
			"Name": "TextureShareSDK",
			"Path": "../Source/Programs/VirtualProduction/TextureShare/TextureShareSDK.Target.cs",
			"Type": "Program"
		},
		{
			"Name": "WebTests",
			"Path": "../Source/Programs/WebTests/WebTests.Target.cs",
			"Type": "Program"
		},
		{
			"Name": "BootstrapPackagedGame",
			"Path": "../Source/Programs/Windows/BootstrapPackagedGame/BootstrapPackagedGame.Target.cs",
			"Type": "Program"
		},
		{
			"Name": "ZenDashboard",
			"Path": "../Source/Programs/ZenDashboard/ZenDashboard.Target.cs",
			"Type": "Program"
		},
		{
			"Name": "ZenLaunch",
			"Path": "../Source/Programs/ZenLaunch/ZenLaunch.Target.cs",
			"Type": "Program"
		},
		{
			"Name": "EventLoopUnitTests",
			"Path": "../Source/Runtime/Online/Experimental/EventLoopTests/EventLoopUnitTests.Target.cs",
			"Type": "Program"
		},
		{
			"Name": "UnrealClient",
			"Path": "../Source/UnrealClient.Target.cs",
			"Type": "Client"
		},
		{
			"Name": "UnrealEditor",
			"Path": "../Source/UnrealEditor.Target.cs",
			"Type": "Editor"
		},
		{
			"Name": "UnrealGame",
			"Path": "../Source/UnrealGame.Target.cs",
			"Type": "Game"
		},
		{
			"Name": "UnrealServer",
			"Path": "../Source/UnrealServer.Target.cs",
			"Type": "Server"
		}
	]
}

Game :

{
	"Targets": [
		{
			"Name": "Exemple",
			"Path": "../Source/Exemple.Target.cs",
			"Type": "Game"
		},
		{
			"Name": "ExempleEditor",
			"Path": "../Source/ExempleEditor.Target.cs",
			"Type": "Editor"
		}
	]
}
0
Hello Meradrin,

Apologies for the delay in responding. I have yet no update for you. We are investigating this issue and I'll get back to you once I have any information.

Stay tuned and have a nice day!
0

Hi Dmitry,

Thank you very much for continuing to investigate my issue. I really appreciate your help and persistence.

In the meantime, do you have a more elegant workaround than the one I'm currently using? Any suggestions would be greatly appreciated.

Thanks again for your support.

Best regards,

Meradrin

0

Hi Dmitry,

I hope you're doing well. I've tested the new version of Rider 2024.1.5, and unfortunately, the issue is still present, as shown in the attached image. Please let me know if you need any further details to assist in resolving this.


I appreciate your efforts in looking into this.

Best regards,
Meradrin

0
Hello Meradrin,

Apologies for keeping you so long without a response.

Would you mind confirming if the issue exists when you open <Engine>/Default.uprojectdirs instead of <Game>.uproject?

Also, the Intermediate/TargetInfo.<Engine/GameName>.json files. Would you mind double-checking if you took these files from the <GameProject>/Intermediate folder or from <Engine>/Intermediate? If possible, please, share these files from <GameProject>/Intermediate.

Have a nice day!
0

 



Hello Dimitry,

Thank you for your message.

I have tested both cases—opening <Engine>/Default.uprojectdirs and <Game>.uproject, and unfortunately, the same issue persists. I'm still unable to execute and debug the UE5 external engine C++ project.

Regarding the second point, I have checked the Intermediate/TargetInfo.<Engine/GameName>.json files. I can confirm that they were taken from the <GameProject>/Intermediate folder. I'll share screenshots with you to show exactly where these files are coming from.

So I give you this file for Engine.
 

Because if I give you this two! The engine one is empty like this:

And TargetInfo.Exemple.json

If I take one from my game project it is basicly the same.

And from the game himself that look like this.

Let me know if there's anything else I should check.

Have a great day!
 

0

Hello Meradrin,

May I ask you to share the following output?

  • Launch from terminal: Engine/Binaries/DotNET/UnrealBuildTool/UnrealBuildTool -Mode=QueryTargets -Output=test.json
  • Then launch:
    Engine/Binaries/DotNET/UnrealBuildTool/UnrealBuildTool -Mode=QueryTargets -Output=testAll.json -IncludeAllTargets
  • Share the generated files. For me, with this cli, they are generated under Engine/Source. You should see the output path from the command output:

There is a link for Upload Service, for your convenience.

Have a nice day!

0

Hi Dmitry,

This is the output

Upload id: 2024_08_21_m3X9hHMjyKhENMFTkJfwVi (files: test.json, testAll.json)

Have a great day!

0
Hello Meradrin,

Take my sincere apologies for the extremely late reply.

Would you mind confirming if the issue is still relevant? Unfortunately, I couldn't reproduce the issue in several test linux environments.
Did you try rebuilding the engine or did you try the latest Rider 2024.3?

Have a nice day!
0

Hello Dimitry,

I can confirm that version 2024.3 has indeed resolved the issue, which is fantastic news! I ran several tests with various external Unreal Engine programs, such as Unreal Insight, and everything seems to be working perfectly. I even created a new program using the BlankProgram template, and that also worked flawlessly. 

Thank you again for your hard work and responsiveness. Honestly, I was starting to lose a bit of faith, but you’ve restored it completely! 😄

Best regards,
Meradrin

0
Hello Meradrin,

I am happy to hear that the issue has been resolved.
Should you have any other questions or difficulties in the future, do not hesitate to contact support.

Have a nice day!
0

Please sign in to leave a comment.