为什么尝试为 Android 运行 tauri 时会失败,因为找不到 OpenSsl?

问题描述 投票:0回答:1

我有一个 tauri 应用程序,我想在移动设备上运行,所以我正在转向 v2,我正在尝试运行

npx tauri android dev
但我收到此错误

  cargo:rerun-if-env-changed=X86_64_LINUX_ANDROID_OPENSSL_LIB_DIR
  X86_64_LINUX_ANDROID_OPENSSL_LIB_DIR unset
  cargo:rerun-if-env-changed=OPENSSL_LIB_DIR
  OPENSSL_LIB_DIR unset
  cargo:rerun-if-env-changed=X86_64_LINUX_ANDROID_OPENSSL_INCLUDE_DIR
  X86_64_LINUX_ANDROID_OPENSSL_INCLUDE_DIR unset
  cargo:rerun-if-env-changed=OPENSSL_INCLUDE_DIR
  OPENSSL_INCLUDE_DIR unset
  cargo:rerun-if-env-changed=X86_64_LINUX_ANDROID_OPENSSL_DIR
  X86_64_LINUX_ANDROID_OPENSSL_DIR unset
  cargo:rerun-if-env-changed=OPENSSL_DIR
  OPENSSL_DIR unset
  cargo:rerun-if-env-changed=OPENSSL_NO_PKG_CONFIG
  cargo:rerun-if-env-changed=PKG_CONFIG_ALLOW_CROSS_x86_64-linux-android
  cargo:rerun-if-env-changed=PKG_CONFIG_ALLOW_CROSS_x86_64_linux_android
  cargo:rerun-if-env-changed=TARGET_PKG_CONFIG_ALLOW_CROSS
  cargo:rerun-if-env-changed=PKG_CONFIG_ALLOW_CROSS
  cargo:rerun-if-env-changed=PKG_CONFIG_x86_64-linux-android
  cargo:rerun-if-env-changed=PKG_CONFIG_x86_64_linux_android
  cargo:rerun-if-env-changed=TARGET_PKG_CONFIG
  cargo:rerun-if-env-changed=PKG_CONFIG
  cargo:rerun-if-env-changed=PKG_CONFIG_SYSROOT_DIR_x86_64-linux-android
  cargo:rerun-if-env-changed=PKG_CONFIG_SYSROOT_DIR_x86_64_linux_android
  cargo:rerun-if-env-changed=TARGET_PKG_CONFIG_SYSROOT_DIR
  cargo:rerun-if-env-changed=PKG_CONFIG_SYSROOT_DIR
  run pkg_config fail: pkg-config has not been configured to support cross-compilation.

  Install a sysroot for the target platform and configure it via
  PKG_CONFIG_SYSROOT_DIR and PKG_CONFIG_PATH, or install a
  cross-compiling wrapper for pkg-config and set it via
  PKG_CONFIG environment variable.

  --- stderr
  thread 'main' panicked at C:\Users\biche\.cargo\registry\src\index.crates.io-6f17d22bba15001f\openssl-sys-0.9.103\build\find_normal.rs:190:5:


  Could not find directory of OpenSSL installation, and this `-sys` crate cannot

  Make sure you also have the development packages of openssl installed.
  For example, `libssl-dev` on Ubuntu or `openssl-devel` on Fedora.

  If you're in a situation where you think the directory *should* be found
  automatically, please open a bug at https://github.com/sfackler/rust-openssl
  and include information about your system as well as this message.

  $HOST = x86_64-pc-windows-msvc
  $TARGET = x86_64-linux-android
  openssl-sys = 0.9.103

我已经有了 android studio 以及文档中所说的所有要求,但这不起作用。我使用的是 Windows 11,如何修复此问题才能运行 Android 版 tauri。

android rust openssl tauri
1个回答
0
投票

我使用的是 crate reqwest,它默认使用 ssl,所以我通过将依赖项更改为

reqwest = { version = "0.12.7", default-features = false, features = ["rustls-tls"] }

来修复它
© www.soinside.com 2019 - 2024. All rights reserved.