SDL repo: GitHub - allyourcodebase/SDL: SDL with the build system replaced by Zig
I am unable to build for Android on version 0.14.0, whereas version 0.13.0 works fine.
My build command is: zig build -Dtarget=aarch64-linux-android --libc "android.conf" --search-prefix "D:/ndk/xxxx/aarch64-linux-android/34"
.
Note that android.conf is a libc define file.
include_dir=D:/ndk/27.1.12297006/toolchains/llvm/prebuilt/windows-x86_64/sysroot/usr/include
sys_include_dir=D:/ndk/27.1.12297006/toolchains/llvm/prebuilt/windows-x86_64/sysroot/usr/include/aarch64-linux-android
crt_dir=D:/ndk/27.1.12297006/toolchains/llvm/prebuilt/windows-x86_64/sysroot/usr/lib/aarch64-linux-android/34
msvc_lib_dir=
kernel32_lib_dir=
gcc_dir=
I have 3 questions:
- The --search-prefix flag seems ineffective, as Zig consistently complains: “unable to find dynamic system library ‘log’ using strategy ‘paths_first’. Searched paths: none.”
- The --libc flag seems ineffective for the lib hidapi. Seems libc file is useless for c++ header files.
- When I remove all addSystemLibrary calls, compiling the SDL library results in errors such as:
ld.lld: relocation R_AARCH64_TLSLE_ADD_TPREL_HI12 against debug.panic_stage cannot be used with -shared
, and similar messages. (I could to setlib.bundle_ubsan_rt = false
to pass this issue)
On version 0.13.0, --search-prefix is also ineffective. However, I was able to remove all addSystemLibrary calls and successfully compile the project.