Open wfxxy opened 3 weeks ago
How are you expecting this to work? It looks like you're trying to cross-compile from x86 Linux to aarch64 Fuchsia? You need a version of OpenSSL to link to. Unfortunately I don't think openssl-src supports Fuchsia, so I think you'll need to do one of:
vendored
feature
Hi owner, when cargo build --target=aarch64-unknown-fuchsia some error occur,how to resolve this question?
build error log: Compiling libc v0.2.155 Compiling foreign-types-shared v0.1.1 Compiling cfg-if v1.0.0 Compiling bitflags v2.5.0 Compiling once_cell v1.19.0 Compiling openssl-sys v0.9.102 Compiling openssl-macros v0.1.1 error: failed to run custom build command for
openssl-sys v0.9.102
Caused by: process didn't exit successfully:
openssl/target/debug/build/openssl-sys-908aa9a24708f521/build-script-main
(exit status: 101) --- stdout cargo:rerun-if-env-changed=AARCH64_UNKNOWN_FUCHSIA_OPENSSL_LIB_DIR AARCH64_UNKNOWN_FUCHSIA_OPENSSL_LIB_DIR unset cargo:rerun-if-env-changed=OPENSSL_LIB_DIR OPENSSL_LIB_DIR unset cargo:rerun-if-env-changed=AARCH64_UNKNOWN_FUCHSIA_OPENSSL_INCLUDE_DIR AARCH64_UNKNOWN_FUCHSIA_OPENSSL_INCLUDE_DIR unset cargo:rerun-if-env-changed=OPENSSL_INCLUDE_DIR OPENSSL_INCLUDE_DIR unset cargo:rerun-if-env-changed=AARCH64_UNKNOWN_FUCHSIA_OPENSSL_DIR AARCH64_UNKNOWN_FUCHSIA_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_aarch64-unknown-fuchsia cargo:rerun-if-env-changed=PKG_CONFIG_ALLOW_CROSS_aarch64_unknown_fuchsia 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_aarch64-unknown-fuchsia cargo:rerun-if-env-changed=PKG_CONFIG_aarch64_unknown_fuchsia cargo:rerun-if-env-changed=TARGET_PKG_CONFIG cargo:rerun-if-env-changed=PKG_CONFIG cargo:rerun-if-env-changed=PKG_CONFIG_SYSROOT_DIR_aarch64-unknown-fuchsia cargo:rerun-if-env-changed=PKG_CONFIG_SYSROOT_DIR_aarch64_unknown_fuchsia 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 openssl/vendor/openssl-sys/build/find_normal.rs:190:5:
Could not find directory of OpenSSL installation, and this
-sys
crate cannot proceed without this knowledge. If OpenSSL is installed and this crate had trouble finding it, you can set theOPENSSL_DIR
environment variable for the compilation process.Make sure you also have the development packages of openssl installed. For example,
libssl-dev
on Ubuntu oropenssl-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-unknown-linux-gnu $TARGET = aarch64-unknown-fuchsia openssl-sys = 0.9.102
note: run with
RUST_BACKTRACE=1
environment variable to display a backtrace warning: build failed, waiting for other jobs to finish...