Android: bindgen NDK-sysroot (фикс bits/libc-header-start.h)
magnum-opus/hwcodec/scrap bindgen резолвил stdint.h в host-glibc. BINDGEN_EXTRA_CLANG_ARGS_<target> = NDK sysroot + android target. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
@@ -63,7 +63,12 @@ RUSTC_BOOTSTRAP=1 flutter_rust_bridge_codegen \
|
|||||||
# glibc-заголовках (bits/libc-header-start.h). Софт-кодеки (vpx/aom) работают. hwcodec-android
|
# glibc-заголовках (bits/libc-header-start.h). Софт-кодеки (vpx/aom) работают. hwcodec-android
|
||||||
# — отдельная доработка (RUSTDESK_ANDROID_FEATURES="flutter,hwcodec" когда починим bindgen).
|
# — отдельная доработка (RUSTDESK_ANDROID_FEATURES="flutter,hwcodec" когда починим bindgen).
|
||||||
FEATURES="${RUSTDESK_ANDROID_FEATURES:-flutter}"
|
FEATURES="${RUSTDESK_ANDROID_FEATURES:-flutter}"
|
||||||
echo "[rust] cargo ndk build --features $FEATURES ..."
|
# bindgen (magnum-opus/hwcodec/scrap) при кросс-сборке резолвит #include <stdint.h> в 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"
|
cargo ndk --platform 21 --target aarch64-linux-android build --locked --release --features "$FEATURES"
|
||||||
|
|
||||||
# --- jniLibs: librustdesk.so + libc++_shared.so ---
|
# --- jniLibs: librustdesk.so + libc++_shared.so ---
|
||||||
|
|||||||
Reference in New Issue
Block a user