I’m in the process of setting up a virtualized Ubuntu dev environment for a project I’ve been building on macos up to now.
I’m running an UbuntuStudio 24.04 VM via Proxmox 8.2. The host is a (semi-cursed) i9-13900k with 128GB of DDR5 and an NVidia 4070ti Super. The GPU is passed through, confirmed working on multiple OS (one at a time ofc). I adapted this tutorial to work with my setup. Passing through the host CPU and setting the hidden flag were key (look for ‘illegal instruction’ errors).
Long story short, I’m using nomachine to log in to the desktop. This will be important later!
Before attempting to compile the UE 5.5 Editor from source, I made sure I was able to open a new project from the prebuilt binary distribution. Also ran the Blender benchmark
After porting over my source directory and running chown, I ran Setup.sh and GenerateProjectFiles.sh from zsh over ssh. Tracked down all the prereqs and installed them. Everything looked good!
Next, I installed jetbrains toolbar and Rider. Now I’m getting this error:
08:53:35.434: Using toolchain located at '/ue/UnrealEngine/Engine/Extras/ThirdPartyNotUE/SDKs/HostLinux/Linux_x64/v23_clang-18.1.0-rockylinux8/x86_64-unknown-linux-gnu'.
08:53:35.434: Using clang (/ue/UnrealEngine/Engine/Extras/ThirdPartyNotUE/SDKs/HostLinux/Linux_x64/v23_clang-18.1.0-rockylinux8/x86_64-unknown-linux-gnu/bin/clang++) version 'clang version 18.1.0rc (github.com/llvm/llvm-project 461274b81d8641eab64d494accddc81d7db8a09e)
08:53:35.434: Target: x86_64-unknown-linux-gnu
08:53:35.434: Thread model: posix
08:53:35.434: InstalledDir: /ue/UnrealEngine/Engine/Extras/ThirdPartyNotUE/SDKs/HostLinux/Linux_x64/v23_clang-18.1.0-rockylinux8/x86_64-unknown-linux-gnu/bin
08:53:35.434: double free or corruption (!prev)
08:53:35.434: pure virtual method called
With such a complicated setup, I was a little mystified tbh. Google wasn’t turning up anything relevant.
I double-checked my clang, mono, and msbuild dependencies. And ran Setup.sh and GenerateProjectFiles.sh from different places.
I noticed a pattern, GPF only worked from my ssh connection (via tmux but that’s not important). Not from the rider terminal instance nor konsole!
At this point I gave up and reactivated my Copilot sub Would have been a new Cursor AI sub if they made month-to-month more attractive.
Anyway, it had me check ulimit -a
and env
in each terminal. ulimit was the same in both, but there was an environment variable which turned out to be key:
LD_PRELOAD
Apparently nomachine sets this to help with graphics rendering!
To clear it:
unset LD_PRELOAD
I’ll probably make a shell script wrapper to run instead of zsh when I’m running Rider from within nomachine. Interestingly, I’m guessing that this issue won’t be a problem when I start using Rider’s ssh functionality!
ETA:
I needed to set DISPLAY=:0
in each project’s build configuration before the editor would run in my nomachine instance.
Also -norelativemousemode
as an argument to make the mouse behave in the viewport and PIE.