diff --git a/scripts/build-android.sh b/scripts/build-android.sh index d7380ed..fe9e74f 100644 --- a/scripts/build-android.sh +++ b/scripts/build-android.sh @@ -63,7 +63,12 @@ RUSTC_BOOTSTRAP=1 flutter_rust_bridge_codegen \ # glibc-заголовках (bits/libc-header-start.h). Софт-кодеки (vpx/aom) работают. hwcodec-android # — отдельная доработка (RUSTDESK_ANDROID_FEATURES="flutter,hwcodec" когда починим bindgen). FEATURES="${RUSTDESK_ANDROID_FEATURES:-flutter}" -echo "[rust] cargo ndk build --features $FEATURES ..." +# bindgen (magnum-opus/hwcodec/scrap) при кросс-сборке резолвит #include в HOST +# /usr/include (glibc) -> не находит bits/libc-header-start.h. Указываем NDK-sysroot и target +# через target-specific env (bindgen читает подчёркнутую форму). +NDK_SYSROOT="$ANDROID_NDK_HOME/toolchains/llvm/prebuilt/linux-x86_64/sysroot" +export BINDGEN_EXTRA_CLANG_ARGS_aarch64_linux_android="--sysroot=$NDK_SYSROOT --target=aarch64-linux-android21" +echo "[rust] cargo ndk build --features $FEATURES (bindgen sysroot=$NDK_SYSROOT) ..." cargo ndk --platform 21 --target aarch64-linux-android build --locked --release --features "$FEATURES" # --- jniLibs: librustdesk.so + libc++_shared.so ---