diff --git a/build.sh b/build.sh index c33abf4..f35da03 100755 --- a/build.sh +++ b/build.sh @@ -255,18 +255,24 @@ trap term EXIT INT TERM dependencies_check "${BASE_DIR}/depends" + +PAGESIZE=$(getconf PAGESIZE) +if [ "$ARCH" == "armhf" ] && [ "$PAGESIZE" != "4096" ]; then + echo + echo "ERROR: Building an $ARCH image requires a kernel with a 4k page size (current: $PAGESIZE)" + echo "On Raspberry Pi OS (64-bit), you can switch to a suitable kernel by adding the following to /boot/firmware/config.txt and rebooting:" + echo + echo "kernel=kernel8.img" + echo "initramfs initramfs8 followkernel" + echo + exit 1 +fi + echo "Checking native $ARCH executable support..." if ! arch-test -n "$ARCH"; then echo "WARNING: Only a native build environment is supported. Checking emulated support..." if ! arch-test "$ARCH"; then echo "No fallback mechanism found. Ensure your OS has binfmt_misc support enabled and configured." - PAGESIZE=$(getconf PAGESIZE) - if [ "$ARCH" == "armhf" ] && [ "$PAGESIZE" != "4096" ]; then - echo - echo "Building an $ARCH image requires a kernel with a 4k page size" - echo "Current pagesize: $PAGESIZE" - echo "On Raspberry Pi OS, you can switch to a suitable kernel by adding kernel=kernel8.img to /boot/firmware/config.txt and rebooting" - fi exit 1 fi fi