Skip to content

The 32-bit arm Native Client loader requires a 4k PageSize kernel, newer RaspiOS boots a 16k PageSize kernel by default on arm64 #3286

@illwieckz

Description

@illwieckz

I discovered in the past that the Raspberry Pi OS for arm64 based on Debian Bookworm was not running Unvanquished, while an older Raspberry Pi Os based on an older Debian did.

I first experienced it on a Raspberry Pi 4, I'm now experiencing it on a Raspberry Pi 5.

I now found why it doesn't work.

Fortunately the Debian Bookworm armhf ld loader (that is newer than the one we ship) printed me that error:

./nacl_loader: error while loading shared libraries: ./nacl_loader: ELF load command address/offset not page-aligned

So I could search on the Internet… and a lot of software are affected:

Here is the solution:

  • Add the line kernel=kernel8.img at the end of the /boot/firmware/config.txt file.
  • Reboot!

After the reboot the NativeClient loader will not fail anymore and the game will run.

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions