Help with lime ndll on Raspberry Pi 4


I’m sorta working on a “ultimate guide to running lime on the Raspberry Pi”. With the help of some stuff I’ve gotten lime and haxe to run. Issue is when I try to compile a game like FNF, I get Error: Source path "/usr/lib/haxe/lib/lime/7,9,0/ndll/RPi/lime.ndll" does not exist. I’m using a rpi build target since no armhf linux target is available. How would I get this ndll file?

Humm… I tried compiling lime with the rpi build target and the ndll exists now! I think fnf is building properly.

Well this is bad, when I try to launch it I get Could not create SDL window: Could not create GLES window surface.

You need a special version of lime and sdl for now, you can find an already compiled ndll here:

I don’t have any money for patreon… I found Does it have the changes the patreon ndll have?

Yes I think it is this fork that produces the ndll offered on patreon.

Alright, so I managed to build it and try to compile fnf with it, but I got this:

Link: ApplicationMain-debug
Called from hxcpp::__hxcpp_main
Called from ApplicationMain::main ApplicationMain.hx line 25
Called from ApplicationMain::create ApplicationMain.hx line 99
Called from openfl.display.Application::createWindow openfl/display/Application.hx line 90
Called from lime/_internal/macros/EventMacro.hx line 91
Called from openfl.display.Stage::__onLimeCreateWindow openfl/display/Stage.hx line 1720
Called from openfl.display.Stage::__onLimeWindowCreate openfl/display/Stage.hx line 2191
Called from openfl.display.Stage::__createRenderer openfl/display/Stage.hx line 1196
Called from openfl.display.OpenGLRenderer::new openfl/display/OpenGLRenderer.hx line 166
Called from openfl.display.OpenGLRenderer::__initShader openfl/display/OpenGLRenderer.hx line 538
Called from openfl.display.Shader::__init openfl/display/Shader.hx line 454
Called from openfl.display.Shader::__initGL openfl/display/Shader.hx line 505
Called from openfl.display.Shader::__createGLProgram openfl/display/Shader.hx line 341
Called from openfl.display.Shader::__createGLShader openfl/display/Shader.hx line 331
Called from lime.utils.Log::error lime/utils/Log.hx line 34
Error : ValueException

You should try to compile a smaller project first like the DisplayingABitmap sample (openfl-samples) because complex project may not works.
I haven’t try to compile the ndll myself so I don’t know what is missing to make it works. Have you downloaded all the mesa packages dependencies?

Yep I did sudo apt-get install libgl1-mesa-dev libglu1-mesa-dev g++ libasound2-dev libx11-dev libxext-dev libxi-dev libxrandr-dev libxinerama-dev. I didn’t install g+±multilib and gcc-multilib since they arn’t on apt and I’m not cross compiling the ndll.

Here’s the ndll I compiled from it: