Git Product home page Git Product logo

openssl-src-rs's Introduction

openssl-src

This crate contains the logic to build OpenSSL and is intended to be consumed by the openssl-sys crate. You likely in theory aren't interacting with this too much!

Versioning

This crate follows the latest minor and patch versions for each maintained major version, according to the OpenSSL release strategy. It has no specific support for LTS versions.

The crate versions follow the X.Y.Z+B pattern:

  • The major version X is the upstream OpenSSL API/ABI compatibility version:
    • 300 for 3.Y.Z
  • The minor Y and patch Z versions are incremented when making changes to the crate, either OpenSSL update or internal changes.
  • B contains the full upstream OpenSSL version, like 1.1.1k or 3.0.7. Note that this field is actually ignored in comparisons and only there for documentation.

Windows MSVC Assembly

Building OpenSSL for windows-msvc targets, users can choose whether to enable assembly language routines, which requires nasm.
The build process will automatically detect whether nasm.exe is installed in PATH. If found, the assembly language routines will be enabled (in other words, the no-asm option will NOT be configured).

You can manipulate this behavior by setting the OPENSSL_RUST_USE_NASM environment variable:

  • 1: Force enable the assembly language routines. (panic if nasm.exe is not available.)
  • 0: Force disable the assembly language routines even if the nasm.exe can be found in PATH.
  • not set: Let the build process automatically detect whether nasm.exe is installed. If found, enable. If not, disable.

However, this environment variable does NOT take effects on non-windows platforms.

License

This project is licensed under either of

at your option.

Contribution

Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in openssl-src by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.

openssl-src-rs's People

Contributors

alexcrichton avatar amousset avatar arrtchiu avatar bdragon28 avatar bromptonian avatar cssivision avatar dependabot-preview[bot] avatar doy-materialize avatar eaufavor avatar ehuss avatar he32 avatar heiher avatar hunterlxt avatar jedzia avatar kanegreen avatar kiron1 avatar lukateras avatar lupine avatar messense avatar mon avatar pkubaj avatar richerfu avatar ryansroberts avatar sercand avatar sfackler avatar shepmaster avatar tomaka avatar varphone avatar vi avatar wez avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

openssl-src-rs's Issues

Probabilistic compile failure on Windows Server 2016 for target i686-pc-windows-msvc

# version:
openssl-src-111.15.0+1.1.1k

run:
cargo build --release --target i686-pc-windows-msvc

may fail report:
{ code: 32, kind: Other, message: "The process cannot access the file because it is being used by another process." }
at
openssl-src-111.15.0+1.1.1k\src\lib.rs:456:40, which is:
fs::remove_dir_all(&inner_dir).unwrap();

detail:
created directoryC:/pipeline-255714-1/target/i686-pc-windows-msvc/release/build/openssl-sys-07fd305febe929f0/out/openssl-build/install/lib'
Copying: libcrypto.lib to C:/pipeline-255714-1/target/i686-pc-windows-msvc/release/build/openssl-sys-07fd305febe929f0/out/openssl-build/install/lib/libcrypto.lib
Copying: libssl.lib to C:/pipeline-255714-1/target/i686-pc-windows-msvc/release/build/openssl-sys-07fd305febe929f0/out/openssl-build/install/lib/libssl.lib
Copying: ossl_static.pdb to C:/pipeline-255714-1/target/i686-pc-windows-msvc/release/build/openssl-sys-07fd305febe929f0/out/openssl-build/install/lib/ossl_static.pdb

--- stderr

Microsoft (R) Program Maintenance Utility Version 14.29.30133.0
Copyright (C) Microsoft Corporation. All rights reserved.

Microsoft (R) Program Maintenance Utility Version 14.29.30133.0
Copyright (C) Microsoft Corporation. All rights reserved.

Microsoft (R) Program Maintenance Utility Version 14.29.30133.0
Copyright (C) Microsoft Corporation. All rights reserved.

Microsoft (R) Program Maintenance Utility Version 14.29.30133.0
Copyright (C) Microsoft Corporation. All rights reserved.

Microsoft (R) Program Maintenance Utility Version 14.29.30133.0
Copyright (C) Microsoft Corporation. All rights reserved.

Microsoft (R) Program Maintenance Utility Version 14.29.30133.0
Copyright (C) Microsoft Corporation. All rights reserved.

thread 'main' panicked at 'called Result::unwrap() on an Err value: Os { code: 32, kind: Other, message: "The process cannot access the file because it is being used by another process." }', C:\Windows\system32\config\systemprofile.cargo\registry\src\github.com-1ecc6299db9ec823\openssl-src-111.15.0+1.1.1k\src\lib.rs:456:40
[2021-09-02 19:22:06] note: run with RUST_BACKTRACE=1 environment variable to display a backtrace
[2021-09-02 19:22:06]The command "cargo build --release --target i686-pc-windows-msvc" exited with 101. `

Then I add a line before it to print var inner_dir :
panic!("inner_dir {:?}", inner_dir);
thread 'main' panicked at 'inner_dir "C:\\-pipeline-255714-1\\target\\i686-pc-windows-msvc\\release\\build\\openssl-sys-07fd305febe929f0\\out\\openssl-build\\build\\src"', C:\Users\Administrator\.cargo\registry\src\github.com-1ecc6299db9ec823\openssl-src-111.15.0+1.1.1k\src\lib.rs:456:9 note: run withRUST_BACKTRACE=1 environment variable to display a backtrace

That means program failed during removing build\src dir.

Then I add a line to sleep 1s before rm dir, it seems resolved. # #
std:: thread ::sleep(std::time::Duration::from_millis(1000));

Failed on armv7s-apple-ios

I'm trying do a cross building for armv7s-apple-ios and armv7-apple-ios, I got a failure message:

thread 'main' panicked at 'don't know how to configure OpenSSL for armv7s-apple-ios'

It came from here, src/lib.js:275:

            "wasm32-wasi" => "gcc",
            "aarch64-apple-ios" => "ios64-cross",
            "x86_64-apple-ios" => "iossimulator-xcrun",
            _ => panic!("don't know how to configure OpenSSL for {}", target),

I've checked openssl lib, actually it supports the 32bit archs. How can I solve this?

Dangerous prefix set

Hi,

I just noticed in some binaries using your library that they are looking in some weird places for an openss.cnf. The weird places is usually a path used for building the binaries. So I dug a bit deeper and found this code:

    if host.contains("pc-windows-gnu") {
        configure.arg(&format!("--prefix={}", sanitize_sh(&install_dir)));
    } else {
        configure.arg(&format!("--prefix={}", install_dir.display()));
    }

if host.contains("pc-windows-gnu") {

I created the folders and indeed the config is loaded (strace indicates so) but unfortunately (for me) I did not manage to exploit this. This path should be kept restricted as CVE-2019-1552 indicates. (https://www.openssl.org/news/secadv/20190730.txt) OpenSSL sets a good default unfortunately it is overwritten by the library.
Could you drop that or offer a solution to set this to the OpenSSL default again?

Unfortunately I'm no rust dev so I cannot really test/debug stuff or even create a pull request. Anyways, thanks for looking into this!

openssl 1.1.1 branch

openssl 1.1.1m has been released today and openssl-sys still depends on 1.1.1, but master branch currently points to 3.0.1. Would you consider maintaining a 1.1.1 branch in parallel to 3.0?

Consider adding ability to build libressl instead

Currently this crate only supports downloading and building the openssl source. It might be useful for upstream projects (like openssl-sys) if this crate could be set to build libressl instead.

vendored build of openssl on Ubuntu for windows failed.

Building OS : Ubuntu

[dependencies]
openssl = { version = "0.10.25", features = ["vendored"] }

Cross Compliation Tool : https://github.com/rust-embedded/cross

cross +beta build --target x86_64-pc-windows-gnu --release
x86_64-w64-mingw32-ar: creating apps/libapps.a
x86_64-w64-mingw32-ar: creating libssl.a
x86_64-w64-mingw32-ar: creating libcrypto.a
thread 'main' panicked at 'OpenSSL libdir at `/home/jerry/rocket-proxy/target/x86_64-pc-windows-gnu/release/build/openssl-sys-3f4f15680432076c/out/openssl-build/install/lib` does not contain the required files to either statically or dynamically link OpenSSL', /home/jerry/.cargo/registry/src/github.com-1ecc6299db9ec823/openssl-sys-0.9.52/build/main.rs:303:13

go easy on the unwraps...

especially in cp_r there are a lot of unwraps that can make debugging difficult

everywhere that works with the file system is easier to work with if it returns results

i ran into this when debugging file path and permissions issues on windows

Can I export variable using Build (or cc in general) `wasm32-wasi`

For building wasm32-wasi we need to set system environment vars:

export C_INCLUDE_PATH=/usr/include/wasm32-wasi:/usr/include/:/usr/include/x86_64-linux-gnu

Is there a way to do this specifically within openssl-src-rs only when building for the noted target?

A bit new to rust can all the tooling...

Version confusion

What are these versions ? 300 ? 111 and Cargo.toml has something, cagro update shows someother vesion, github actions generate something else, Crates-io has two version ? Oo ? Can someone clarify this ? (and maybe some readme? Thanks)

Runtime failure with i686-unknown-linux-musl

src/main.rs:

fn main() {
    use openssl::ssl::{SslMethod, SslConnector};
    use std::io::{Read, Write};
    use std::net::TcpStream;

    let mut cb = SslConnector::builder(SslMethod::tls()).unwrap();
    cb.set_verify(openssl::ssl::SslVerifyMode::NONE);
    let connector = cb.build();

    let stream = TcpStream::connect("example.com:443").unwrap();
    let mut stream = connector.connect("example.com", stream).unwrap();

    stream.write_all(b"GET / HTTP/1.0\r\n\r\n").unwrap();
    let mut res = vec![];
    stream.read_to_end(&mut res).unwrap();
    println!("{}", String::from_utf8_lossy(&res));
}

Cargo.toml:

[package]
name = "osslvtest"
version = "0.1.0"
authors = []
edition = "2018"

[dependencies]
openssl = { version = "0.10.32", features = ["vendored"] }

Run attempt:

thread 'main' panicked at 'called `Result::unwrap()` on an `Err` value: ErrorStack([Error { code: 604422254, library: "random number generator", function: "RAND_DRBG_instantiate", reason: "error retrieving entropy", file: "crypto/rand/drbg_lib.c", line: 335 }, Error { code: 604418162, library: "random number generator", function: "RAND_DRBG_generate", reason: "in error state", file: "crypto/rand/drbg_lib.c", line: 588 }, Error { code: 604422254, library: "random number generator", function: "RAND_DRBG_instantiate", reason: "error retrieving entropy", file: "crypto/rand/drbg_lib.c", line: 335 }, Error { code: 604422254, library: "random number generator", function: "RAND_DRBG_instantiate", reason: "error retrieving entropy", file: "crypto/rand/drbg_lib.c", line: 335 }, Error { code: 604418162, library: "random number generator", function: "RAND_DRBG_generate", reason: "in error state", file: "crypto/rand/drbg_lib.c", line: 588 }, Error { code: 604422254, library: "random number generator", function: "RAND_DRBG_instantiate", reason: "error retrieving entropy", file: "crypto/rand/drbg_lib.c", line: 335 }, Error { code: 604418162, library: "random number generator", function: "RAND_DRBG_generate", reason: "in error state", file: "crypto/rand/drbg_lib.c", line: 588 }, Error { code: 604422254, library: "random number generator", function: "RAND_DRBG_instantiate", reason: "error retrieving entropy", file: "crypto/rand/drbg_lib.c", line: 335 }, Error { code: 604418162, library: "random number generator", function: "RAND_DRBG_generate", reason: "in error state", file: "crypto/rand/drbg_lib.c", line: 588 }, Error { code: 604422254, library: "random number generator", function: "RAND_DRBG_instantiate", reason: "error retrieving entropy", file: "crypto/rand/drbg_lib.c", line: 335 }, Error { code: 604422254, library: "random number generator", function: "RAND_DRBG_instantiate", reason: "error retrieving entropy", file: "crypto/rand/drbg_lib.c", line: 335 }, Error { code: 604418162, library: "random number generator", function: "RAND_DRBG_generate", reason: "in error state", file: "crypto/rand/drbg_lib.c", line: 588 }, Error { code: 604422254, library: "random number generator", function: "RAND_DRBG_instantiate", reason: "error retrieving entropy", file: "crypto/rand/drbg_lib.c", line: 335 }, Error { code: 604418162, library: "random number generator", function: "RAND_DRBG_generate", reason: "in error state", file: "crypto/rand/drbg_lib.c", line: 588 }, Error { code: 336236609, library: "SSL routines", function: "SSL_CTX_new", reason: "malloc failure", file: "ssl/ssl_lib.c", line: 3147 }])', src/main.rs:6:58

Does not happen with non-musl i686 or with x86_64 musl build. arm-unknown-linux-musleabi also works.

Trying with RUSTFLAGS='-C link-arg=-Wl,-z,stack-size=0x1000000' does not lead to improvement.

rustc 1.49.0 (e1884a8e3 2020-12-29), cargo 1.49.0 (d00d64df9 2020-12-05).

AR environment variable is overwritten

Hi,

This line overwrites the AR environment variable if gcc has a prefix.

configure.env("AR", format!("{}-ar", path));

This is a pain as my ar is x86_64-unknown-linux-gnu-gcc-ar not x86_64-unknown-linux-gnu-ar - is there any way to override this?

It's running on a build server so I don't have much control.

openwrt support

OpenWRT set the vendor field to openwrt and that trips the os discovery logic.
Is it ok to add other 4 entries in the match?

Consider tagging a new release

Hey, I'm trying to build for the Omega2 Onion computer, and thus need commit 37ebe0b. Would it be possible to tag a new release so that I would get the updated version? Thanks! โ˜บ๏ธ

nasm support for msvc?

I've noticed this code in the lib.rs, which indicates that no-asm is enabled for msvc toolchain no matter nasm.exe is installed or not.

As far as I know, assembly language routines of OpenSSL provide hardware acceleration support such as AES-NI, which is a performance booster.

Installing nasm.exe is easy. So, I think we should consider the users who installed it and disable no-asm for them.

You can consider this code:

use std::process::Command;
let wherenasm = Command::new("cmd")
    .args(&["/C", "where nasm"])
    .output()
    .expect("failed to exec cmd");
if !wherenasm.status.success() {
    configure.arg("no-asm");
}

This modification works on Windows 10 64bit (1909), VS Community 2019 (16.5.2), rustc 1.42.0 (stable-x86_64-pc-windows-msvc), NASM version 2.14.02.

[dependencies]
openssl = { version = "0.10", features = ["vendored"] }
[patch.crates-io]
openssl-src = { path = '../PatchedCrates/openssl-src-111.8.1+1.1.1f' }

Linker plugin LTO

Rust currently supports linker plugin LTO (aka cross language optimization, aka link time optimization).

It would be interesting to see impact of this in the context of OpenSSL. Basically compiling OpenSSL with clang -flto, so it will allow cross inlining and dead code elimination, etc.. I'm hoping that this will greatly reduce size of the resulting executable.

Compile failure on AArch64: โ€˜-fcf-protection=fullโ€™ is not supported for this target

Arch Linux ARM (AArch64)
openssl 1.1.1

EDIT: gcc 10.2.0 as shipped by Arch Linux ARM

The following warnings were emitted during compilation:

warning: cc1: error: โ€˜-fcf-protection=fullโ€™ is not supported for this target

error: failed to run custom build command for `openssl-sys v0.9.63`

Caused by:
  process didn't exit successfully: `/home/parker/build/paru-git/src/paru/target/release/build/openssl-sys-be2fe4d8d8ca03bf/build-script-main` (exit code: 101)
  --- stdout
  cargo:rustc-cfg=const_fn
  cargo:rerun-if-env-changed=AARCH64_UNKNOWN_LINUX_GNU_OPENSSL_LIB_DIR
  AARCH64_UNKNOWN_LINUX_GNU_OPENSSL_LIB_DIR unset
  cargo:rerun-if-env-changed=OPENSSL_LIB_DIR
  OPENSSL_LIB_DIR unset
  cargo:rerun-if-env-changed=AARCH64_UNKNOWN_LINUX_GNU_OPENSSL_INCLUDE_DIR
  AARCH64_UNKNOWN_LINUX_GNU_OPENSSL_INCLUDE_DIR unset
  cargo:rerun-if-env-changed=OPENSSL_INCLUDE_DIR
  OPENSSL_INCLUDE_DIR unset
  cargo:rerun-if-env-changed=AARCH64_UNKNOWN_LINUX_GNU_OPENSSL_DIR
  AARCH64_UNKNOWN_LINUX_GNU_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
  cargo:rerun-if-env-changed=OPENSSL_STATIC
  cargo:rerun-if-env-changed=OPENSSL_DYNAMIC
  cargo:rerun-if-env-changed=PKG_CONFIG_ALL_STATIC
  cargo:rerun-if-env-changed=PKG_CONFIG_ALL_DYNAMIC
  cargo:rerun-if-env-changed=PKG_CONFIG_PATH_aarch64-unknown-linux-gnu
  cargo:rerun-if-env-changed=PKG_CONFIG_PATH_aarch64_unknown_linux_gnu
  cargo:rerun-if-env-changed=HOST_PKG_CONFIG_PATH
  cargo:rerun-if-env-changed=PKG_CONFIG_PATH
  cargo:rerun-if-env-changed=PKG_CONFIG_LIBDIR_aarch64-unknown-linux-gnu
  cargo:rerun-if-env-changed=PKG_CONFIG_LIBDIR_aarch64_unknown_linux_gnu
  cargo:rerun-if-env-changed=HOST_PKG_CONFIG_LIBDIR
  cargo:rerun-if-env-changed=PKG_CONFIG_LIBDIR
  cargo:rerun-if-env-changed=PKG_CONFIG_SYSROOT_DIR_aarch64-unknown-linux-gnu
  cargo:rerun-if-env-changed=PKG_CONFIG_SYSROOT_DIR_aarch64_unknown_linux_gnu
  cargo:rerun-if-env-changed=HOST_PKG_CONFIG_SYSROOT_DIR
  cargo:rerun-if-env-changed=PKG_CONFIG_SYSROOT_DIR
  cargo:rerun-if-env-changed=PKG_CONFIG_SYSROOT_DIR
  cargo:rerun-if-env-changed=SYSROOT
  cargo:rerun-if-env-changed=OPENSSL_STATIC
  cargo:rerun-if-env-changed=OPENSSL_DYNAMIC
  cargo:rerun-if-env-changed=PKG_CONFIG_ALL_STATIC
  cargo:rerun-if-env-changed=PKG_CONFIG_ALL_DYNAMIC
  cargo:rustc-link-lib=ssl
  cargo:rustc-link-lib=crypto
  cargo:rerun-if-env-changed=PKG_CONFIG
  cargo:rerun-if-env-changed=OPENSSL_STATIC
  cargo:rerun-if-env-changed=OPENSSL_DYNAMIC
  cargo:rerun-if-env-changed=PKG_CONFIG_ALL_STATIC
  cargo:rerun-if-env-changed=PKG_CONFIG_ALL_DYNAMIC
  cargo:rerun-if-env-changed=PKG_CONFIG_PATH_aarch64-unknown-linux-gnu
  cargo:rerun-if-env-changed=PKG_CONFIG_PATH_aarch64_unknown_linux_gnu
  cargo:rerun-if-env-changed=HOST_PKG_CONFIG_PATH
  cargo:rerun-if-env-changed=PKG_CONFIG_PATH
  cargo:rerun-if-env-changed=PKG_CONFIG_LIBDIR_aarch64-unknown-linux-gnu
  cargo:rerun-if-env-changed=PKG_CONFIG_LIBDIR_aarch64_unknown_linux_gnu
  cargo:rerun-if-env-changed=HOST_PKG_CONFIG_LIBDIR
  cargo:rerun-if-env-changed=PKG_CONFIG_LIBDIR
  cargo:rerun-if-env-changed=PKG_CONFIG_SYSROOT_DIR_aarch64-unknown-linux-gnu
  cargo:rerun-if-env-changed=PKG_CONFIG_SYSROOT_DIR_aarch64_unknown_linux_gnu
  cargo:rerun-if-env-changed=HOST_PKG_CONFIG_SYSROOT_DIR
  cargo:rerun-if-env-changed=PKG_CONFIG_SYSROOT_DIR
  OPT_LEVEL = Some("3")
  TARGET = Some("aarch64-unknown-linux-gnu")
  HOST = Some("aarch64-unknown-linux-gnu")
  CC_aarch64-unknown-linux-gnu = None
  CC_aarch64_unknown_linux_gnu = None
  HOST_CC = None
  CC = None
  CFLAGS_aarch64-unknown-linux-gnu = None
  CFLAGS_aarch64_unknown_linux_gnu = None
  HOST_CFLAGS = None
  CFLAGS = Some("-march=armv8-a -mtune=generic -O2 -pipe -fno-plt -fexceptions         -Wp,-D_FORTIFY_SOURCE=2 -Wformat -Werror=format-security         -fstack-clash-protection -fcf-protection")
  CRATE_CC_NO_DEFAULTS = None
  DEBUG = Some("false")
  CARGO_CFG_TARGET_FEATURE = None
  running: "cc" "-O3" "-ffunction-sections" "-fdata-sections" "-fPIC" "-march=armv8-a" "-mtune=generic" "-O2" "-pipe" "-fno-plt" "-fexceptions" "-Wp,-D_FORTIFY_SOURCE=2" "-Wformat" "-Werror=format-security" "-fstack-clash-protection" "-fcf-protection" "-I" "/usr/include" "-E" "build/expando.c"
  cargo:warning=cc1: error: โ€˜-fcf-protection=fullโ€™ is not supported for this target
  exit code: 1

  --- stderr
  thread 'main' panicked at '
  Header expansion error:
  Error { kind: ToolExecError, message: "Command \"cc\" \"-O3\" \"-ffunction-sections\" \"-fdata-sections\" \"-fPIC\" \"-march=armv8-a\" \"-mtune=generic\" \"-O2\" \"-pipe\" \"-fno-plt\" \"-fexceptions\" \"-Wp,-D_FORTIFY_SOURCE=2\" \"-Wformat\" \"-Werror=format-security\" \"-fstack-clash-protection\" \"-fcf-protection\" \"-I\" \"/usr/include\" \"-E\" \"build/expando.c\" with args \"cc\" did not execute successfully (status code exit code: 1)." }

  Failed to find OpenSSL development headers.

  You can try fixing this setting the `OPENSSL_DIR` environment variable
  pointing to your OpenSSL installation or installing OpenSSL headers package
  specific to your distribution:

      # On Ubuntu
      sudo apt-get install libssl-dev
      # On Arch Linux
      sudo pacman -S openssl
      # On Fedora
      sudo dnf install openssl-devel

  See rust-openssl README for more information:

      https://github.com/sfackler/rust-openssl#linux
  ', /home/parker/.cargo/registry/src/github.com-1ecc6299db9ec823/openssl-sys-0.9.63/build/main.rs:147:13
  note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace
warning: build failed, waiting for other jobs to finish...

Can I somehow point other sys crates (during compile time) to the libs build by this crate?

I have a project that needs to be cross compiled which has two deps that both require SSL. So I added:

native-tls = { version = "0.2", features = ["vendored"] }

to my own project to make sure SSL is compiled and linked statically. But one of the deps is itself also a sys create that requires OPENSSL_ROOT_DIR to be set when it's compiling (for which it is using the cmake crate), so I was searching for a way to dynamically set that to the directory used by this crate to reuse the compiled artifacts.

I can make a PR to the sys package the update or change it's behaviour, but I fail to understand how (and if) I can find the value I need and how (and again if) I can provide that dynamically. Thanks!

Vendored feature failed to cross compile armv7-linux-androideabi

Error building OpenSSL:
Command: "make" "build_libs"
Exit status: exit code: 2

', /home/viga/.cargo/registry/src/github.com-1ecc6299db9ec823/openssl-src-111.10.2+1.1.1g/src/lib.rs:410:13

note: run with RUST_BACKTRACE=1 environment variable to display a backtrace

warning: build failed, waiting for other jobs to finish...
error: failed to run custom build command for openssl-sys v0.9.58

Caused by:
process didn't exit successfully: /home/viga/workspace/test/sidl/target/release/build/openssl-sys-723a9cb19b46db99/build-script-main (exit code: 101)
--- stdout
cargo:rustc-cfg=const_fn
cargo:rerun-if-env-changed=ARMV7_LINUX_ANDROIDEABI_OPENSSL_NO_VENDOR
ARMV7_LINUX_ANDROIDEABI_OPENSSL_NO_VENDOR unset
cargo:rerun-if-env-changed=OPENSSL_NO_VENDOR
OPENSSL_NO_VENDOR unset
CC_armv7-linux-androideabi = None
CC_armv7_linux_androideabi = None
TARGET_CC = None
CC = None
CFLAGS_armv7-linux-androideabi = None
CFLAGS_armv7_linux_androideabi = None
TARGET_CFLAGS = None
CFLAGS = Some("--sysroot=/home/viga/workspace/build_dep/build_sidl/ndk_arm_29/sysroot -I/home/viga/workspace/build_dep/build_sidl/ndk_arm_29/sysroot/usr/include")
CRATE_CC_NO_DEFAULTS = None
DEBUG = Some("false")
CARGO_CFG_TARGET_FEATURE = None
running "perl" "./Configure" "--prefix=/home/viga/workspace/test/sidl/target/armv7-linux-androideabi/release/build/openssl-sys-23571861cd3fdaaf/out/openssl-build/install" "no-dso" "no-ssl3" "no-unit-test" "no-comp" "no-zlib" "no-zlib-dynamic" "no-md2" "no-rc5" "no-weak-ssl-ciphers" "no-camellia" "no-idea" "no-seed" "no-stdio" "no-shared" "linux-armv4" "-O2" "-ffunction-sections" "-fdata-sections" "-fPIC" "-march=armv7-a" "-mthumb" "-mfpu=vfpv3-d16" "-mfloat-abi=softfp" "--sysroot=/home/viga/workspace/build_dep/build_sidl/ndk_arm_29/sysroot" "-I/home/viga/workspace/build_dep/build_sidl/ndk_arm_29/sysroot/usr/include"
Configuring OpenSSL version 1.1.1g (0x1010107fL) for linux-armv4
Using os-specific seed configuration
Creating configdata.pm
Creating Makefile



*** OpenSSL has been successfully configured ***


*** If you encounter a problem while building, please open an ***
*** issue on GitHub https://github.com/openssl/openssl/issues ***
*** and include the output from the following command: ***


*** perl configdata.pm --dump ***


*** (If you are new to OpenSSL, you might want to consult the ***
*** 'Troubleshooting' section in the INSTALL file first) ***



running "make" "depend"
running "make" "build_libs"
/usr/bin/perl "-I." -Mconfigdata "util/dofile.pl"
"-oMakefile" include/crypto/bn_conf.h.in > include/crypto/bn_conf.h
/usr/bin/perl "-I." -Mconfigdata "util/dofile.pl"
"-oMakefile" include/crypto/dso_conf.h.in > include/crypto/dso_conf.h
/usr/bin/perl "-I." -Mconfigdata "util/dofile.pl"
"-oMakefile" include/openssl/opensslconf.h.in > include/openssl/opensslconf.h
make depend && make _build_libs
make[1]: Entering directory /home/viga/workspace/test/sidl/target/armv7-linux-androideabi/release/build/openssl-sys-23571861cd3fdaaf/out/openssl-build/build/src' make[1]: Leaving directory /home/viga/workspace/test/sidl/target/armv7-linux-androideabi/release/build/openssl-sys-23571861cd3fdaaf/out/openssl-build/build/src'
make[1]: Entering directory `/home/viga/workspace/test/sidl/target/armv7-linux-androideabi/release/build/openssl-sys-23571861cd3fdaaf/out/openssl-build/build/src'
CC="arm-linux-androideabi-gcc" /usr/bin/perl crypto/aes/asm/aes-armv4.pl linux32 crypto/aes/aes-armv4.S
............
...........
--- stderr
clang80: error: no input files
crypto/poly1305/poly1305-armv4.S:168:2: error: out of range immediate fixup value
addeq r12,r11,#(poly1305_emit-.Lpoly1305_init)
^
crypto/poly1305/poly1305-armv4.S:169:2: error: out of range immediate fixup value
addne r12,r11,#(poly1305_emit_neon-.Lpoly1305_init)
^
crypto/poly1305/poly1305-armv4.S:171:2: error: out of range immediate fixup value
addne r11,r11,#(poly1305_blocks_neon-.Lpoly1305_init)
^
make[1]: *** [crypto/poly1305/poly1305-armv4.o] Error 1
make[1]: *** Waiting for unfinished jobs....
make: *** [build_libs] Error 2
thread 'main' panicked at '

Error building OpenSSL:
Command: "make" "build_libs"
Exit status: exit code: 2

', /home/viga/.cargo/registry/src/github.com-1ecc6299db9ec823/openssl-src-111.10.2+1.1.1g/src/lib.rs:410:13

note: run with RUST_BACKTRACE=1 environment variable to display a backtrace

Unable to build on windows

I've been unable to build on windows, building via cargo-wix. Here's a gist of the output. I processed this to strip some of the control characters; sorry if anything's missing.

https://gist.github.com/erikh/32cc0225f6ff1ce64a5f56165e8dea32

Here's the cargo.toml I'm using: https://github.com/zerotier/zeronsd/blob/main/Cargo.toml#L74

The wix command in use is cargo wix -L ext -L WixFirewallExtension -C ext -C WixFirewallExtension --nocapture.

I hope this helps. I am kind of windows dumb and don't know what's happening here.

Musl builds broken on readonly filesystems

Compiling using the Nix package manager on musl panics:-

thread 'main' panicked at 'called `Result::unwrap()` on an `Err` value: Os { code: 13, kind: PermissionDenied, message: "Permission denied" }', /nix/store/3bcpw5cb4pibbj8hc1z21m5i9rxa9s3r-crates-io/openssl-src-111.22.0+1.1.1q/src/lib.rs:547:26

This is because of

fs::write(path, buf).unwrap();

which tries to overwrite crypto/rand/rand_unix.c. Nix mounts /nix/store readonly.

Vendored build fails on freebsd target

Originally opened this at sfackler/rust-openssl#1307 where I was told to open it here.

When attempting to use the --feature openssl/vendored flag on target x86_64-unknown-freebsd, I get a panic during compilation. Some relevant logs:

... (lots of output that seems irrelevant) ...

cc  -I. -Iinclude -fPIC -pthread -Wa,--noexecstack -Wall -O3 -O2 -ffunction-sections -fdata-sections -fPIC -g -fno-omit-frame-pointer -m64 -DL_ENDIAN -DOPENSSL_PIC -DOPENSSL_CPUID_OBJ -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DKECCAK1600_ASM -DRC4_ASM -DMD5_ASM -DAESNI_ASM -DVPAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DX25519_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/home/travis/build/samtay/so/target/x86_64-unknown-freebsd/debug/build/openssl-sys-5fa0352f1ccf2a9f/out/openssl-build/install/ssl\"" -DENGINESDIR="\"/home/travis/build/samtay/so/target/x86_64-unknown-freebsd/debug/build/openssl-sys-5fa0352f1ccf2a9f/out/openssl-build/install/lib/engines-1.1\"" -D_THREAD_SAFE -D_REENTRANT -DNDEBUG  -MMD -MF crypto/engine/eng_devcrypto.d.tmp -MT crypto/engine/eng_devcrypto.o -c -o crypto/engine/eng_devcrypto.o crypto/engine/eng_devcrypto.c

make[1]: Leaving directory `/home/travis/build/samtay/so/target/x86_64-unknown-freebsd/debug/build/openssl-sys-5fa0352f1ccf2a9f/out/openssl-build/build/src'

--- stderr

crypto/engine/eng_devcrypto.c:23:30: fatal error: crypto/cryptodev.h: No such file or directory

 #include <crypto/cryptodev.h>

                              ^

compilation terminated.

make[1]: *** [crypto/engine/eng_devcrypto.o] Error 1

make: *** [build_libs] Error 2

thread 'main' panicked at '

Error building OpenSSL:

    Command: "make" "build_libs"

    Exit status: exit code: 2

    ', /home/travis/.cargo/registry/src/github.com-1ecc6299db9ec823/openssl-src-111.10.0+1.1.1g

Full output can be seen in the job log.

Unable to build for armv7-unknown-linux-gnueabihf

Compiled using cargo-zigbuild as it's easier to set up and use.
Command: cargo zigbuild --target armv7-unknown-linux-gnueabihf
Here's the error that I get when trying to compile a project that depends on openssl-sys:

error: failed to run custom build command for `openssl-sys v0.9.72`

Caused by:
  process didn't exit successfully: `/home/jtcf/rustworks/rusted-motorchik/target/debug/build/openssl-sys-7685c3558ec24905/build-script-main` (exit status: 101)
  --- stdout
  cargo:rustc-cfg=const_fn
  cargo:rerun-if-env-changed=ARMV7_UNKNOWN_LINUX_GNUEABIHF_OPENSSL_NO_VENDOR
  ARMV7_UNKNOWN_LINUX_GNUEABIHF_OPENSSL_NO_VENDOR unset
  cargo:rerun-if-env-changed=OPENSSL_NO_VENDOR
  OPENSSL_NO_VENDOR unset
  CC_armv7-unknown-linux-gnueabihf = None
  CC_armv7_unknown_linux_gnueabihf = Some("/root/.cache/cargo-zigbuild/0.7.0/zigcc-armv7-unknown-linux-gnueabihf.sh")
  CFLAGS_armv7-unknown-linux-gnueabihf = None
  CFLAGS_armv7_unknown_linux_gnueabihf = None
  TARGET_CFLAGS = None
  CFLAGS = None
  CRATE_CC_NO_DEFAULTS = None
  DEBUG = Some("true")
  CARGO_CFG_TARGET_FEATURE = None
  running "perl" "./Configure" "--prefix=/home/jtcf/rustworks/rusted-motorchik/target/armv7-unknown-linux-gnueabihf/debug/build/openssl-sys-8cac96e5bf8a3062/out/openssl-build/install" "no-dso" "no-shared" "no-ssl3" "no-unit-test" "no-comp" "no-zlib" "no-zlib-dynamic" "no-md2" "no-rc5" "no-weak-ssl-ciphers" "no-camellia" "no-idea" "no-seed" "linux-armv4" "-O2" "-ffunction-sections" "-fdata-sections" "-fPIC" "-g" "-fno-omit-frame-pointer" "-march=armv7-a" "-mfpu=vfpv3-d16"
  Configuring OpenSSL version 1.1.1n (0x101010efL) for linux-armv4
  Using os-specific seed configuration
  Creating configdata.pm
  Creating Makefile

  **********************************************************************
  ***                                                                ***
  ***   OpenSSL has been successfully configured                     ***
  ***                                                                ***
  ***   If you encounter a problem while building, please open an    ***
  ***   issue on GitHub <https://github.com/openssl/openssl/issues>  ***
  ***   and include the output from the following command:           ***
  ***                                                                ***
  ***       perl configdata.pm --dump                                ***
  ***                                                                ***
  ***   (If you are new to OpenSSL, you might want to consult the    ***
  ***   'Troubleshooting' section in the INSTALL file first)         ***
  ***                                                                ***
  **********************************************************************
  running "make" "depend"
  running "make" "build_libs"
  /usr/bin/perl "-I." -Mconfigdata "util/dofile.pl" \
      "-oMakefile" include/crypto/bn_conf.h.in > include/crypto/bn_conf.h
  /usr/bin/perl "-I." -Mconfigdata "util/dofile.pl" \
      "-oMakefile" include/crypto/dso_conf.h.in > include/crypto/dso_conf.h
  /usr/bin/perl "-I." -Mconfigdata "util/dofile.pl" \
      "-oMakefile" include/openssl/opensslconf.h.in > include/openssl/opensslconf.h
  make depend && make _build_libs
  make[1]: Entering directory '/home/jtcf/rustworks/rusted-motorchik/target/armv7-unknown-linux-gnueabihf/debug/build/openssl-sys-8cac96e5bf8a3062/out/openssl-build/build/src'
  make[1]: Leaving directory '/home/jtcf/rustworks/rusted-motorchik/target/armv7-unknown-linux-gnueabihf/debug/build/openssl-sys-8cac96e5bf8a3062/out/openssl-build/build/src'
  make[1]: Entering directory '/home/jtcf/rustworks/rusted-motorchik/target/armv7-unknown-linux-gnueabihf/debug/build/openssl-sys-8cac96e5bf8a3062/out/openssl-build/build/src'
  /root/.cache/cargo-zigbuild/0.7.0/zigcc-armv7-unknown-linux-gnueabihf.sh  -I. -Iinclude -fPIC -pthread -Wall -O3 -O2 -ffunction-sections -fdata-sections -fPIC -g -fno-omit-frame-pointer -march=armv7-a -mfpu=vfpv3-d16 -DOPENSSL_USE_NODELETE -DOPENSSL_PIC -DOPENSSL_CPUID_OBJ -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DKECCAK1600_ASM -DAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/home/jtcf/rustworks/rusted-motorchik/target/armv7-unknown-linux-gnueabihf/debug/build/openssl-sys-8cac96e5bf8a3062/out/openssl-build/install/ssl\"" -DENGINESDIR="\"/home/jtcf/rustworks/rusted-motorchik/target/armv7-unknown-linux-gnueabihf/debug/build/openssl-sys-8cac96e5bf8a3062/out/openssl-build/install/lib/engines-1.1\"" -DNDEBUG   -c -o apps/app_rand.o apps/app_rand.c
  make[1]: Leaving directory '/home/jtcf/rustworks/rusted-motorchik/target/armv7-unknown-linux-gnueabihf/debug/build/openssl-sys-8cac96e5bf8a3062/out/openssl-build/build/src'

  --- stderr
  error: UnknownArchitecture
  make[1]: *** [Makefile:671: apps/app_rand.o] Error 1
  make: *** [Makefile:175: build_libs] ะžัˆะธะฑะบะฐ 2
  thread 'main' panicked at '


  Error building OpenSSL:
      Command: "make" "build_libs"
      Exit status: exit status: 2


      ', /root/.cargo/registry/src/github.com-1ecc6299db9ec823/openssl-src-111.18.0+1.1.1n/src/lib.rs:479:13
  note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace
warning: build failed, waiting for other jobs to finish...
error: build failed

Freebsd build fails.

Shows

  thread 'main' panicked at 'called `Result::unwrap()` on an `Err` value: Os { code: 2, kind: NotFound, message: "No such file or directory" }', /u/vi/.cargo/registry/src/github.com-1ecc6299db9ec823/openssl-src-111.15.0+1.1.1k/src/lib.rs:469:39

after output of OpenSSL's perl-based config script output when run on FreeBSD.

Vendored build fails on Arch

(Reported first at sfackler/rust-openssl#1218)

Exactly what the title says. I'm running Manjaro Arch, trying to cargo install cargo-web, with:

  • pamac info openssl shows version 1.1.1.d-2 (there's no openssl-dev or similar on Arch, AFAIK)
  • rustup --version: 1.20.2
  • cargo version: 1.40.0 (same for rustc, etc.)
  • cargo-web version: 0.6.26
  • openssl-sys version: 0.9.45 (with the vendored feature)

It fails when compiling openssl-sys. Both the exact pinned version 0.9.45 and the latest compile just fine without the vendored feature; both fail when that feature is enabled. I can't change the version anyway. It works on Windows and, as far as I can tell, Ubuntu, hence mentioning Arch.

Because this is the dependency of something I'm trying to install which has the specific version pinned, even if it is a bug in this crate and not a misconfiguration on my end, I'd still very much prefer to have a workaround. If there's no workaround, though, I'm happy to open an issue to bump versions.

Output with RUST_BACKTRACE=full of the error:

  process didn't exit successfully: `/tmp/cargo-installiyXAcq/release/build/openssl-sys-154243b84d829997/build-script-main` (exit code: 101)
--- stdout
cargo:rustc-cfg=const_fn
CC_x86_64-unknown-linux-gnu = None
CC_x86_64_unknown_linux_gnu = None
HOST_CC = None
CC = None
CFLAGS_x86_64-unknown-linux-gnu = None
CFLAGS_x86_64_unknown_linux_gnu = None
HOST_CFLAGS = None
CFLAGS = None
CRATE_CC_NO_DEFAULTS = None
DEBUG = Some("false")
CARGO_CFG_TARGET_FEATURE = Some("fxsr,sse,sse2")
running "perl" "./Configure" "--prefix=/tmp/cargo-installiyXAcq/release/build/openssl-sys-024b1cef651473a7/out/openssl-build/install" "no-dso" "no-ssl3" "no-unit-test" "no-comp" "no-zlib" "no-zlib-dynamic" "no-engine" "no-async" "no-shared" "linux-x86_64" "-O2" "-ffunction-sections" "-fdata-sections" "-fPIC" "-m64"
Configuring OpenSSL version 1.1.1d (0x1010104fL) for linux-x86_64
Using os-specific seed configuration
Creating configdata.pm
Creating Makefile

**********************************************************************
***                                                                ***
***   OpenSSL has been successfully configured                     ***
***                                                                ***
***   If you encounter a problem while building, please open an    ***
***   issue on GitHub <https://github.com/openssl/openssl/issues>  ***
***   and include the output from the following command:           ***
***                                                                ***
***       perl configdata.pm --dump                                ***
***                                                                ***
***   (If you are new to OpenSSL, you might want to consult the    ***
***   'Troubleshooting' section in the INSTALL file first)         ***
***                                                                ***
**********************************************************************
running "make" "depend"

--- stderr
thread 'main' panicked at 'called `Result::unwrap()` on an `Err` value: Os { code: 2, kind: NotFound, message: "No such file or directory" }', src/libcore/result.rs:1165:5
stack backtrace:
   0:     0x5591593b0d24 - backtrace::backtrace::libunwind::trace::h65597d255cb1398b
                               at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.40/src/backtrace/libunwind.rs:88
   1:     0x5591593b0d24 - backtrace::backtrace::trace_unsynchronized::hd4f479d7150ec4a0
                               at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.40/src/backtrace/mod.rs:66
   2:     0x5591593b0d24 - std::sys_common::backtrace::_print_fmt::h015072984a2b172c
                               at src/libstd/sys_common/backtrace.rs:77
   3:     0x5591593b0d24 - <std::sys_common::backtrace::_print::DisplayBacktrace as core::fmt::Display>::fmt::h6df05d3335f32194
                               at src/libstd/sys_common/backtrace.rs:61
   4:     0x5591593d30bc - core::fmt::write::h1f444f4312eb6c27
                               at src/libcore/fmt/mod.rs:1028
   5:     0x5591593ad887 - std::io::Write::write_fmt::h8d147888220078ef
                               at src/libstd/io/mod.rs:1412
   6:     0x5591593b49de - std::sys_common::backtrace::_print::h8a6df0fa81d6af62
                               at src/libstd/sys_common/backtrace.rs:65
   7:     0x5591593b49de - std::sys_common::backtrace::print::h6f05b4733407e509
                               at src/libstd/sys_common/backtrace.rs:50
   8:     0x5591593b49de - std::panicking::default_hook::{{closure}}::h0d0a23bd02315dd8
                               at src/libstd/panicking.rs:188
   9:     0x5591593b46d1 - std::panicking::default_hook::h8d15a9aecb4efac6
                               at src/libstd/panicking.rs:205
  10:     0x5591593b50db - std::panicking::rust_panic_with_hook::hbe174577402a475d
                               at src/libstd/panicking.rs:464
  11:     0x5591593b4c7e - std::panicking::continue_panic_fmt::h4d855dad868accf3
                               at src/libstd/panicking.rs:373
  12:     0x5591593b4b66 - rust_begin_unwind
                               at src/libstd/panicking.rs:302
  13:     0x5591593d08ae - core::panicking::panic_fmt::hdeb7979ab6591473
                               at src/libcore/panicking.rs:139
  14:     0x5591593d09a7 - core::result::unwrap_failed::h054dd680e6fcd38b
                               at src/libcore/result.rs:1165
  15:     0x5591593886cc - openssl_src::Build::run_command::h071ba6d15eaa3c08
  16:     0x559159387321 - openssl_src::Build::build::hba47a1ec0b7fd556
  17:     0x55915937f54f - build_script_main::find::get_openssl::hbe15c6f910a50950
  18:     0x55915937a64a - build_script_main::main::h462f5d86a97e38a1
  19:     0x55915937db13 - std::rt::lang_start::{{closure}}::h189f4767f1222cf0
  20:     0x5591593b4b03 - std::rt::lang_start_internal::{{closure}}::h6ea535ec5c50fc3e
                               at src/libstd/rt.rs:48
  21:     0x5591593b4b03 - std::panicking::try::do_call::h631c6408dfccc6f5
                               at src/libstd/panicking.rs:287
  22:     0x5591593bd16a - __rust_maybe_catch_panic
                               at src/libpanic_unwind/lib.rs:78
  23:     0x5591593b55bd - std::panicking::try::hab539b2d1255d635
                               at src/libstd/panicking.rs:265
  24:     0x5591593b55bd - std::panic::catch_unwind::hd5e0a26424bd7f34
                               at src/libstd/panic.rs:396
  25:     0x5591593b55bd - std::rt::lang_start_internal::h3bdc4c7d98181bf9
                               at src/libstd/rt.rs:47
  26:     0x55915937d252 - main
  27:     0x7f321d02f153 - __libc_start_main
  28:     0x55915937818e - _start
  29:                0x0 - <unknown>

Error while cross compiling from Windows 10 to Raspberry Pi 2 (armv7-unknown-linux-gnueabihf)

Hello, I just ran into an issue trying to use the vendored feature to cross-compile from Windows 10 to a Raspberry Pi 2. I am using the nightly-x86_64-pc-windows-msvc toolchain. The exact error can be seen in the captured stderr when the build fails:

C:/SysGCC/raspberry/bin/arm-linux-gnueabihf-ar: creating apps/libapps.a
  crypto/cversion.c: In function 'OpenSSL_version':
  crypto/cversion.c:38:44: error: incomplete universal character name \U
           return "ENGINESDIR: \"" ENGINESDIR "\"";
                                              ^~~~
  crypto/cversion.c:38:44: warning: unknown escape sequence: '\D'
  crypto/cversion.c:38:44: warning: unknown escape sequence: '\h'
  crypto/cversion.c:38:44: warning: unknown escape sequence: '\d'
  crypto/cversion.c:38:44: warning: unknown escape sequence: '\o'
  crypto/cversion.c:38:44: warning: unknown escape sequence: '\o'
  crypto/cversion.c:38:44: warning: unknown escape sequence: '\o'
  crypto/cversion.c:38:44: warning: unknown escape sequence: '\i'
  make[1]: *** [Makefile:2254: crypto/cversion.o] Error 1
  make: *** [Makefile:177: build_libs] Error 2

For my build, I specified the following environment variables:

PERL = "C:/Users/nathaniel/scoop/apps/msys2/current/usr/bin/perl" 

CC = "C:/SysGCC/raspberry/bin/arm-linux-gnueabihf-gcc"
CXX = "C:/SysGCC/raspberry/bin/arm-linux-gnueabihf-g++"

CMAKE_GENERATOR = "Ninja"

I also set the linker through RUSTFLAGS as C:/SysGCC/raspberry/bin/arm-linux-gnueabihf-gcc. I set my target as armv7-unknown-linux-gnueabihf.

I tracked this down to ENGINESDIR having backslashes instead of forward slashes, and I tracked it back to the prefix option in the configure script. Currently, this library uses the following to set the prefix:

if host.contains("pc-windows-gnu") {
    configure.arg(&format!("--prefix={}", sanitize_sh(&install_dir)));
} else {
    configure.arg(&format!("--prefix={}", install_dir.display()));
}

I edited the bottom case to instead be configure.arg(&format!("--prefix={}", install_dir.to_str().unwrap().replace('\\', "/")));. I don't particularly understand the ramifications of this change, but it seems to fix my build. sanitize_sh seems to only be applicable for Mingw as it tries to change the paths from Windows style to Mingw style. Could this be fixed by adding another case for windows msvc?

support for illumos systems

At the moment, when building for an illumos system, you get this error:

error: failed to run custom build command for `openssl-sys v0.9.53`

Caused by:
  process didn't exit successfully: `/rust/build/x86_64-unknown-linux-gnu/stage1-tools/release/build/openssl-sys-cd2ff60dc414d5d9/build-script-main` (exit code: 101)
--- stdout
cargo:rustc-cfg=const_fn

--- stderr
thread 'main' panicked at 'don't know how to configure OpenSSL for x86_64-sun-solaris', /root/.cargo/registry/src/github.com-1ecc6299db9ec823/openssl-src-111.6.1+1.1.1d/src/lib.rs:180:18
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace

The fix is pretty simple:

diff --git a/src/lib.rs b/src/lib.rs
index 12e3438..3a177ad 100644
--- a/src/lib.rs
+++ b/src/lib.rs
@@ -180,6 +180,7 @@ impl Build {
             "x86_64-unknown-linux-gnu" => "linux-x86_64",
             "x86_64-unknown-linux-musl" => "linux-x86_64",
             "x86_64-unknown-netbsd" => "BSD-x86_64",
+            "x86_64-sun-solaris" => "solaris64-x86_64-gcc",
             "wasm32-unknown-emscripten" => "gcc",
             "wasm32-unknown-unknown" => "gcc",
             "aarch64-apple-ios" => "ios64-cross",

I hit this as part of getting illumos/Solaris support into rustup. Is it alright if I open a PR with the change above? With the above patched in, everything works and I'm able to get a static vendored OpenSSL in my rustup binary.

Additionally, it looks like for openssl-sys to pick such a change up, we'd also need to update the version and publish the crate? Is it OK if I include bumping the version to 111.6.2+1.1.1d in the PR, or do you want to do that separately?

Thanks!

Unable to generate static binaries on Haiku

Haiku R1/beta3, Rust 1.57.0

Attempting to build a static openssl fails:

RUSTFLAGS='-C target-feature=+crt-static' cargo build --release
.
.
error: failed to run custom build command for `openssl-sys v0.9.72`
.
thread 'main' panicked at 'don't know how to configure OpenSSL for x86_64-unknown-haiku', /boot/home/.cargo/registry/src/github.com-1ecc6292.../openssl-src-111.17.0+1.1.1m/src/lib/rs:283:18
pkg-config openssl --static --libs --cflags
-I/packages/openssl-1.1.1m-1/.self/develop/headers -L/packages/openssl-1.1.1m-1/.self/develop/lib -lssl -lcrypto -lnetwork

Supporting aarch64-apple-darwin

I was hoping that OpenSSL would accept the PR that adds support to their build system for aarch64-apple-darwin, but with 1.1.1h released without it, it seems unlikely by the end of 2020. As such, I'd like to discuss how the project feels about applying our own patches on top of the official release.

Specifically, the patch in question only modifies the build system to use existing pieces in new ways.

With that applied, and a single line added to this crate to map target triples, it's possible to cross-compile to aarch64-apple-darwin:

% SDKROOT=$(xcrun -sdk macosx11.0 --show-sdk-path) MACOSX_DEPLOYMENT_TARGET=$(xcrun -sdk macosx11.0 --show-sdk-platform-version) cargo +462ec6baef52edea591eab1a070ed4e18b80d094 build --target=aarch64-apple-darwin --features vendored
   Compiling cc v1.0.60
   Compiling pkg-config v0.3.18
   Compiling autocfg v1.0.1
   Compiling libc v0.2.77
   Compiling bitflags v1.2.1
   Compiling foreign-types-shared v0.1.1
   Compiling openssl v0.10.30 (/Users/shep/Projects/rust-openssl/openssl)
   Compiling cfg-if v0.1.10
   Compiling lazy_static v1.4.0
   Compiling foreign-types v0.3.2
   Compiling openssl-src v111.10.2+1.1.1g (/Users/shep/Projects/openssl-src-rs)
   Compiling openssl-sys v0.9.58 (/Users/shep/Projects/rust-openssl/openssl-sys)
    Finished dev [unoptimized + debuginfo] target(s) in 29.71s

This should make it possible to build Cargo for this platform as well.

compile wasm32-wasi

I get an error compiling wasm32-wasi, what should I do?

[package]
name = "hello-wasm4"
version = "0.1.0"
edition = "2021"

# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html

[dependencies]
openssl = { version = "0.10.40", features = ["vendored"]}

my example code: https://github.com/Z1W3/hello-wasm

   Compiling openssl-sys v0.9.75
error: failed to run custom build command for `openssl-sys v0.9.75`

Caused by:
  process didn't exit successfully: `/Users/catt.zhi/Projects/AndroidStudioProjects/payease/fork_projects/ehking-common-android/hello-wasm4/target/debug/build/openssl-sys-142d7fbe1da909f9/build-script-main` (exit status: 101)
  --- stdout
  cargo:rustc-cfg=const_fn
  cargo:rerun-if-env-changed=WASM32_WASI_OPENSSL_NO_VENDOR
  WASM32_WASI_OPENSSL_NO_VENDOR unset
  cargo:rerun-if-env-changed=OPENSSL_NO_VENDOR
  OPENSSL_NO_VENDOR unset
  CC_wasm32-wasi = None
  CC_wasm32_wasi = None
  TARGET_CC = None
  CC = None
  CFLAGS_wasm32-wasi = None
  CFLAGS_wasm32_wasi = None
  TARGET_CFLAGS = None
  CFLAGS = None
  CRATE_CC_NO_DEFAULTS = None
  DEBUG = Some("true")
  running "perl" "./Configure" "--prefix=/Users/catt.zhi/Projects/AndroidStudioProjects/payease/fork_projects/ehking-common-android/hello-wasm4/target/wasm32-wasi/debug/build/openssl-sys-a7bd188ca3d6e119/out/openssl-build/install" "--openssldir=/usr/local/ssl" "no-dso" "no-shared" "no-ssl3" "no-unit-test" "no-comp" "no-zlib" "no-zlib-dynamic" "no-md2" "no-rc5" "no-weak-ssl-ciphers" "no-camellia" "no-idea" "no-seed" "gcc" "-O2" "-ffunction-sections" "-fdata-sections" "-fPIC" "-g" "-fno-omit-frame-pointer" "--target=wasm32-wasi"
  Configuring OpenSSL version 1.1.1q (0x1010111fL) for gcc
  Using os-specific seed configuration
  Creating configdata.pm
  Creating Makefile

  The library could not be configured for supporting multi-threaded
  applications as the compiler options required on this system are not known.
  See file INSTALL for details if you need multi-threading.

  **********************************************************************
  ***                                                                ***
  ***   OpenSSL has been successfully configured                     ***
  ***                                                                ***
  ***   If you encounter a problem while building, please open an    ***
  ***   issue on GitHub <https://github.com/openssl/openssl/issues>  ***
  ***   and include the output from the following command:           ***
  ***                                                                ***
  ***       perl configdata.pm --dump                                ***
  ***                                                                ***
  ***   (If you are new to OpenSSL, you might want to consult the    ***
  ***   'Troubleshooting' section in the INSTALL file first)         ***
  ***                                                                ***
  **********************************************************************
  running "make" "depend"
  running "make" "build_libs"
  perl "-I." -Mconfigdata "util/dofile.pl" \
            "-oMakefile" include/crypto/bn_conf.h.in > include/crypto/bn_conf.h
  perl "-I." -Mconfigdata "util/dofile.pl" \
            "-oMakefile" include/crypto/dso_conf.h.in > include/crypto/dso_conf.h
  perl "-I." -Mconfigdata "util/dofile.pl" \
            "-oMakefile" include/openssl/opensslconf.h.in > include/openssl/opensslconf.h
  /Applications/Xcode.app/Contents/Developer/usr/bin/make depend && /Applications/Xcode.app/Contents/Developer/usr/bin/make _build_libs
  clang  -I. -Iinclude  -O3 -O2 -ffunction-sections -fdata-sections -fPIC -g -fno-omit-frame-pointer --target=wasm32-wasi -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/Users/catt.zhi/Projects/AndroidStudioProjects/payease/fork_projects/ehking-common-android/hello-wasm4/target/wasm32-wasi/debug/build/openssl-sys-a7bd188ca3d6e119/out/openssl-build/install/lib/engines-1.1\"" -DNDEBUG -I/usr/local/opt/openssl@3/include -MMD -MF apps/app_rand.d.tmp -MT apps/app_rand.o -c -o apps/app_rand.o apps/app_rand.c
  clang  -I. -Iinclude  -O3 -O2 -ffunction-sections -fdata-sections -fPIC -g -fno-omit-frame-pointer --target=wasm32-wasi -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/Users/catt.zhi/Projects/AndroidStudioProjects/payease/fork_projects/ehking-common-android/hello-wasm4/target/wasm32-wasi/debug/build/openssl-sys-a7bd188ca3d6e119/out/openssl-build/install/lib/engines-1.1\"" -DNDEBUG -I/usr/local/opt/openssl@3/include -MMD -MF apps/apps.d.tmp -MT apps/apps.o -c -o apps/apps.o apps/apps.c
  clang  -I. -Iinclude  -O3 -O2 -ffunction-sections -fdata-sections -fPIC -g -fno-omit-frame-pointer --target=wasm32-wasi -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/Users/catt.zhi/Projects/AndroidStudioProjects/payease/fork_projects/ehking-common-android/hello-wasm4/target/wasm32-wasi/debug/build/openssl-sys-a7bd188ca3d6e119/out/openssl-build/install/lib/engines-1.1\"" -DNDEBUG -I/usr/local/opt/openssl@3/include -MMD -MF apps/bf_prefix.d.tmp -MT apps/bf_prefix.o -c -o apps/bf_prefix.o apps/bf_prefix.c
  clang  -I. -Iinclude  -O3 -O2 -ffunction-sections -fdata-sections -fPIC -g -fno-omit-frame-pointer --target=wasm32-wasi -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/Users/catt.zhi/Projects/AndroidStudioProjects/payease/fork_projects/ehking-common-android/hello-wasm4/target/wasm32-wasi/debug/build/openssl-sys-a7bd188ca3d6e119/out/openssl-build/install/lib/engines-1.1\"" -DNDEBUG -I/usr/local/opt/openssl@3/include -MMD -MF apps/opt.d.tmp -MT apps/opt.o -c -o apps/opt.o apps/opt.c
  clang  -I. -Iinclude  -O3 -O2 -ffunction-sections -fdata-sections -fPIC -g -fno-omit-frame-pointer --target=wasm32-wasi -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/Users/catt.zhi/Projects/AndroidStudioProjects/payease/fork_projects/ehking-common-android/hello-wasm4/target/wasm32-wasi/debug/build/openssl-sys-a7bd188ca3d6e119/out/openssl-build/install/lib/engines-1.1\"" -DNDEBUG -I/usr/local/opt/openssl@3/include -MMD -MF apps/s_cb.d.tmp -MT apps/s_cb.o -c -o apps/s_cb.o apps/s_cb.c
  clang  -I. -Iinclude  -O3 -O2 -ffunction-sections -fdata-sections -fPIC -g -fno-omit-frame-pointer --target=wasm32-wasi -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/Users/catt.zhi/Projects/AndroidStudioProjects/payease/fork_projects/ehking-common-android/hello-wasm4/target/wasm32-wasi/debug/build/openssl-sys-a7bd188ca3d6e119/out/openssl-build/install/lib/engines-1.1\"" -DNDEBUG -I/usr/local/opt/openssl@3/include -MMD -MF apps/s_socket.d.tmp -MT apps/s_socket.o -c -o apps/s_socket.o apps/s_socket.c
  clang  -I. -Iinclude  -O3 -O2 -ffunction-sections -fdata-sections -fPIC -g -fno-omit-frame-pointer --target=wasm32-wasi -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/Users/catt.zhi/Projects/AndroidStudioProjects/payease/fork_projects/ehking-common-android/hello-wasm4/target/wasm32-wasi/debug/build/openssl-sys-a7bd188ca3d6e119/out/openssl-build/install/lib/engines-1.1\"" -DNDEBUG -I/usr/local/opt/openssl@3/include -MMD -MF crypto/aes/aes_cbc.d.tmp -MT crypto/aes/aes_cbc.o -c -o crypto/aes/aes_cbc.o crypto/aes/aes_cbc.c
  clang  -I. -Iinclude  -O3 -O2 -ffunction-sections -fdata-sections -fPIC -g -fno-omit-frame-pointer --target=wasm32-wasi -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/Users/catt.zhi/Projects/AndroidStudioProjects/payease/fork_projects/ehking-common-android/hello-wasm4/target/wasm32-wasi/debug/build/openssl-sys-a7bd188ca3d6e119/out/openssl-build/install/lib/engines-1.1\"" -DNDEBUG -I/usr/local/opt/openssl@3/include -MMD -MF crypto/aes/aes_cfb.d.tmp -MT crypto/aes/aes_cfb.o -c -o crypto/aes/aes_cfb.o crypto/aes/aes_cfb.c
  clang  -I. -Iinclude  -O3 -O2 -ffunction-sections -fdata-sections -fPIC -g -fno-omit-frame-pointer --target=wasm32-wasi -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/Users/catt.zhi/Projects/AndroidStudioProjects/payease/fork_projects/ehking-common-android/hello-wasm4/target/wasm32-wasi/debug/build/openssl-sys-a7bd188ca3d6e119/out/openssl-build/install/lib/engines-1.1\"" -DNDEBUG -I/usr/local/opt/openssl@3/include -MMD -MF crypto/aes/aes_core.d.tmp -MT crypto/aes/aes_core.o -c -o crypto/aes/aes_core.o crypto/aes/aes_core.c
  clang  -I. -Iinclude  -O3 -O2 -ffunction-sections -fdata-sections -fPIC -g -fno-omit-frame-pointer --target=wasm32-wasi -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/Users/catt.zhi/Projects/AndroidStudioProjects/payease/fork_projects/ehking-common-android/hello-wasm4/target/wasm32-wasi/debug/build/openssl-sys-a7bd188ca3d6e119/out/openssl-build/install/lib/engines-1.1\"" -DNDEBUG -I/usr/local/opt/openssl@3/include -MMD -MF crypto/aes/aes_ecb.d.tmp -MT crypto/aes/aes_ecb.o -c -o crypto/aes/aes_ecb.o crypto/aes/aes_ecb.c
  clang  -I. -Iinclude  -O3 -O2 -ffunction-sections -fdata-sections -fPIC -g -fno-omit-frame-pointer --target=wasm32-wasi -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/Users/catt.zhi/Projects/AndroidStudioProjects/payease/fork_projects/ehking-common-android/hello-wasm4/target/wasm32-wasi/debug/build/openssl-sys-a7bd188ca3d6e119/out/openssl-build/install/lib/engines-1.1\"" -DNDEBUG -I/usr/local/opt/openssl@3/include -MMD -MF crypto/aes/aes_ige.d.tmp -MT crypto/aes/aes_ige.o -c -o crypto/aes/aes_ige.o crypto/aes/aes_ige.c
  clang  -I. -Iinclude  -O3 -O2 -ffunction-sections -fdata-sections -fPIC -g -fno-omit-frame-pointer --target=wasm32-wasi -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/Users/catt.zhi/Projects/AndroidStudioProjects/payease/fork_projects/ehking-common-android/hello-wasm4/target/wasm32-wasi/debug/build/openssl-sys-a7bd188ca3d6e119/out/openssl-build/install/lib/engines-1.1\"" -DNDEBUG -I/usr/local/opt/openssl@3/include -MMD -MF crypto/aes/aes_misc.d.tmp -MT crypto/aes/aes_misc.o -c -o crypto/aes/aes_misc.o crypto/aes/aes_misc.c
  clang  -I. -Iinclude  -O3 -O2 -ffunction-sections -fdata-sections -fPIC -g -fno-omit-frame-pointer --target=wasm32-wasi -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/Users/catt.zhi/Projects/AndroidStudioProjects/payease/fork_projects/ehking-common-android/hello-wasm4/target/wasm32-wasi/debug/build/openssl-sys-a7bd188ca3d6e119/out/openssl-build/install/lib/engines-1.1\"" -DNDEBUG -I/usr/local/opt/openssl@3/include -MMD -MF crypto/aes/aes_ofb.d.tmp -MT crypto/aes/aes_ofb.o -c -o crypto/aes/aes_ofb.o crypto/aes/aes_ofb.c
  clang  -I. -Iinclude  -O3 -O2 -ffunction-sections -fdata-sections -fPIC -g -fno-omit-frame-pointer --target=wasm32-wasi -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/Users/catt.zhi/Projects/AndroidStudioProjects/payease/fork_projects/ehking-common-android/hello-wasm4/target/wasm32-wasi/debug/build/openssl-sys-a7bd188ca3d6e119/out/openssl-build/install/lib/engines-1.1\"" -DNDEBUG -I/usr/local/opt/openssl@3/include -MMD -MF crypto/aes/aes_wrap.d.tmp -MT crypto/aes/aes_wrap.o -c -o crypto/aes/aes_wrap.o crypto/aes/aes_wrap.c
  clang  -I. -Iinclude  -O3 -O2 -ffunction-sections -fdata-sections -fPIC -g -fno-omit-frame-pointer --target=wasm32-wasi -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/Users/catt.zhi/Projects/AndroidStudioProjects/payease/fork_projects/ehking-common-android/hello-wasm4/target/wasm32-wasi/debug/build/openssl-sys-a7bd188ca3d6e119/out/openssl-build/install/lib/engines-1.1\"" -DNDEBUG -I/usr/local/opt/openssl@3/include -MMD -MF crypto/aria/aria.d.tmp -MT crypto/aria/aria.o -c -o crypto/aria/aria.o crypto/aria/aria.c
  clang  -I. -Iinclude  -O3 -O2 -ffunction-sections -fdata-sections -fPIC -g -fno-omit-frame-pointer --target=wasm32-wasi -DOPENSSLDIR="\"/usr/local/ssl\"" -DENGINESDIR="\"/Users/catt.zhi/Projects/AndroidStudioProjects/payease/fork_projects/ehking-common-android/hello-wasm4/target/wasm32-wasi/debug/build/openssl-sys-a7bd188ca3d6e119/out/openssl-build/install/lib/engines-1.1\"" -DNDEBUG -I/usr/local/opt/openssl@3/include -MMD -MF crypto/asn1/a_bitstr.d.tmp -MT crypto/asn1/a_bitstr.o -c -o crypto/asn1/a_bitstr.o crypto/asn1/a_bitstr.c

  --- stderr
  apps/bf_prefix.c:10:10: fatal error: 'stdio.h' file not found
  #include <stdio.h>
           ^~~~~~~~~
  apps/s_cb.c:11:10: fatal error: 'stdio.h' file not found
  #include <stdio.h>
           ^~~~~~~~~
  apps/s_socket.c:11:10: fatal error: 'stdio.h' file not found
  #include <stdio.h>
           ^~~~~~~~~
  crypto/aes/aes_ecb.c:10:10: fatal error: 'assert.h' file not found
  #include <assert.h>
           ^~~~~~~~~~
  apps/apps.cIn file included from apps/app_rand.c:10:
  In file included from apps/apps.h:13:18:10: fatal error: 'stdio.h' file not found
  :
  In file included from ./e_os.h:16:
  In file included from include/openssl/e_os2.h:243:
  /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/clang/13.1.6/include/inttypes.h:21:15: fatal error: 'inttypes.h' file not found
  #include <stdio.h>
           ^~~~~~~~~
  #include_next <inttypes.h>
                ^~~~~~~~~~~~
  In file included from crypto/aes/aes_wrap.c:10:
  include/internal/cryptlib.h:13:11: fatal error: 'stdlib.h' file not found
  # include <stdlib.h>
            ^~~~~~~~~~
  In file included from crypto/aes/aes_ige.c:10:
  include/internal/cryptlib.h:13:11: fatal error: 'stdlib.h' file not found
  In file included from apps/opt.c:9:
  In file included from apps/apps.h:# include <stdlib.h>
            ^~~~~~~~~~
  13:
  In file included from ./e_os.h:16:
  In file included from include/openssl/e_os2.h:243:
  /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/clang/13.1.6/include/inttypes.h:21:15: fatal error: 'inttypes.h' file not found
  #include_next <inttypes.h>
                ^~~~~~~~~~~~
  1 error generated.
  error: unable to create target: 'No available targets are compatible with triple "wasm32-unknown-wasi"'
  error: unable to create target: 'No available targets are compatible with triple "wasm32-unknown-wasi"'
  1 error generated.
  1 error generated.
  In file included from crypto/aria/aria.c:21:
  In file included from include/openssl/e_os2.h:243:
  /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/clang/13.1.6/include/inttypes.h:21:15: fatal error: 'inttypes.h' file not found
  #include_next <inttypes.h>
                ^~~~~~~~~~~~
  make[1]: *** [crypto/aes/aes_ecb.o] Error 1
  make[1]: *** Waiting for unfinished jobs....
  error: unable to create target: 'No available targets are compatible with triple "wasm32-unknown-wasi"'
  make[1]: *** [crypto/aes/aes_cbc.o] Error 1
  crypto/aes/aes_core.c:39:10: fatal error: 'assert.h' file not found
  1#include <assert.h> error generated.

           ^~~~~~~~~~
  make[1]: *** [crypto/aes/aes_cfb.o] Error 1
  crypto/asn1/a_bitstr.c:11:10: fatal error: 'stdio.h' file not found
  #include <stdio.h>
           ^~~~~~~~~
  In file included from crypto/aes/aes_misc.c:12:
  In file included from crypto/aes/aes_local.h:13:
  In file included from include/openssl/e_os2.h:243:
  /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/clang/13.1.6/include/inttypes.h:21:15: fatal error: 'inttypes.h' file not found
  #include_next <inttypes.h>
                ^~~~~~~~~~~~
  1 error generated.
  make[1]: *** [crypto/aes/aes_ofb.o] Error 1
  make[1]: *** [crypto/aes/aes_misc.o] Error 1
  1 error generated.
  make[1]: *** [crypto/aria/aria.o] Error 1
  1 error generated.
  1 error generated.
  make[1]: *** [crypto/aes/aes_wrap.o] Error 1
  1 error generated.
  make[1]: *** [crypto/aes/aes_core.o] Error 1
  make[1]: *** [crypto/aes/aes_ige.o] Error 1
  1 error generated.
  make[1]: *** [crypto/asn1/a_bitstr.o] Error 1
  1 error generated.
  1 error generated.
  make[1]: *** [apps/bf_prefix.o] Error 1
  make[1]: *** [apps/app_rand.o] Error 1
  1 error generated.
  make[1]: *** [apps/opt.o] Error 1
  1 error generated.
  make[1]: *** [apps/s_socket.o] Error 1
  1 error generated.
  make[1]: *** [apps/s_cb.o] Error 1
  1 error generated.
  make[1]: *** [apps/apps.o] Error 1
  make: *** [build_libs] Error 2
  thread 'main' panicked at '


  Error building OpenSSL:
      Command: "make" "build_libs"
      Exit status: exit status: 2


      ', /Users/catt.zhi/.cargo/registry/src/github.com-1ecc6299db9ec823/openssl-src-111.22.0+1.1.1q/src/lib.rs:490:13
  stack backtrace:
     0: rust_begin_unwind
               at /rustc/a8314ef7d0ec7b75c336af2c9857bfaf43002bfc/library/std/src/panicking.rs:584:5
     1: core::panicking::panic_fmt
               at /rustc/a8314ef7d0ec7b75c336af2c9857bfaf43002bfc/library/core/src/panicking.rs:142:14
     2: openssl_src::Build::run_command
               at /Users/catt.zhi/.cargo/registry/src/github.com-1ecc6299db9ec823/openssl-src-111.22.0+1.1.1q/src/lib.rs:490:13
     3: openssl_src::Build::build
               at /Users/catt.zhi/.cargo/registry/src/github.com-1ecc6299db9ec823/openssl-src-111.22.0+1.1.1q/src/lib.rs:462:13
     4: build_script_main::find_vendored::get_openssl
               at ./build/find_vendored.rs:5:21
     5: build_script_main::find_openssl
               at ./build/main.rs:57:20
     6: build_script_main::main
               at ./build/main.rs:68:35
     7: core::ops::function::FnOnce::call_once
               at /rustc/a8314ef7d0ec7b75c336af2c9857bfaf43002bfc/library/core/src/ops/function.rs:248:5
  note: Some details are omitted, run with `RUST_BACKTRACE=full` for a verbose backtrace.

Automatically detect features for musl

I have a similar use-case as well like in #151.
But based on the way it looks it is unlikely that this is a suitable solution. At least I couldn't get it to work.
Could you please elaborate how does this change supposed to work?

Because based on the usages this crate is always built in other crates. I.e.: In case of openssl-sys they are calling directly the Build in lib.rs. So I don't think it goes through the normal means of cargo build facilities (build.rs). I think this feature-flag would only be controllable in Cargo.toml if we would have the normal build procedure. (correct me if I am wrong)

Ideally I could think 2 ways to fix this problem:

  • Export this feature all the way and make it possible to customize the Build section from openssl-sys
  • Add sample test programs which can decide wether the current platform supports such facilities which are disabled by default on musl or windows (probably this one is more robust)
    What do you think?

force-engine feature seems to not be including the engine

The 111.24.0+1.1.1s release seems to include the change to add the force-engine feature (a714062):

$ git tag --contains a714062
111.23.0+1.1.1r
111.24.0+1.1.1s

However, when trying to use it, openssl-src, seems to still be providing the no-engine flag. See vectordotdev/vector#15375, in particular the failed cross-compilation for musl.

For contrast, this fork that removes the conditional for setting no-engine does compile correctly.

I feel like I may be missing something though.

Vendored build of rust-openssl fails on x86_64-apple-ios

(Filed here as requested by @sfackler โ€“ copied from sfackler/rust-openssl#1172)

When building a crate using vendored OpenSSL for iOS using cargo lipo, the build succeeds on aarch64-apple-ios but fails on x86_64-apple-ios.

Rust 1.37.0 / Xcode 10.2.1 / macOS 10.14.5.

There is no actual code in the crate (empty lib.rs). Cargo.toml includes:

[dependencies]
openssl = { version = "0.10", features = ["vendored"] }

[lib]
name = "opensslios"
crate-type = ["staticlib"]

Stderr messages begin with:

ar: creating archive libssl.a
Undefined symbols for architecture x86_64:
  "_aesni_cbc_encrypt", referenced from:
      _aesni_init_key in libcrypto.a(e_aes.o)
      _aesni_cbc_cipher in libcrypto.a(e_aes.o)

and end with:

ld: symbol(s) not found for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)
make[1]: *** [apps/openssl] Error 1
make: *** [all] Error 2
thread 'main' panicked at '


Error building OpenSSL:
    Command: "make"
    Exit status: exit code: 2


    ', /Users/ed/.cargo/registry/src/github.com-1ecc6299db9ec823/openssl-src-111.6.0+1.1.1d/src/lib.rs:363:13
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace.

[ERROR cargo_lipo] Failed to build "testcrate" for "x86_64-apple-ios": Executing "/Users/ed/.rustup/toolchains/stable-x86_64-apple-darwin/bin/cargo" "--color" "auto" "build" "-p" "testcrate" "--target" "x86_64-apple-ios" "--lib" finished with error status: exit code: 101

I did modify openssl-src-rs/src/lib.rs a couple months back to get this to work, but because (1) I didn't understand what I was doing and (2) doing it correctly should be very straightforward for someone who does...I'm going to just link to the history rather than actually submitting a pull request:

https://github.com/edbaskerville/openssl-src-rs/commits/master/src/lib.rs

Failure to build on Windows for arm-linux-androideabi

Note: Could also be an issue with openssl-sys 0.9.58

relevant-log.txt

The line: self.run_command(build, "building OpenSSL"); fails with:

/bin/sh: E:AndroidSDKndk21.1.6352462toolchainsllvmprebuiltwindows-x86_64binarmv7a-linux-androideabi28-clang.cmd: command not found
when compiling for arm-linux-androideabi on Windows 7.

I believe this is due to an issue with escaping of the CC variable in the OpenSSL Makefile

build.txt - (bat) script used
Makefile.txt
configdata.dump.txt - perl configdata.pm --dump

I'm new to Rust, please let me know if I can provide more information.

toml (with trivial rs file)

[package]
name = "rsdroid"
version = "0.1.0"

[lib]
crate_type = ["dylib"]

[dependencies]

[target.'cfg(linux)'.dependencies]
reqwest = { version = "0.10.1", features = ["json", "socks", "native-tls-vendored"] }

[target.'cfg(not(linux))'.dependencies]
reqwest = { version = "0.10.1", features = ["json", "socks"] }

A few other errors in relevant-log.txt:

Command: "make" "build_libs" Exit status: exit code: 2
[openssl-sys 0.9.58] make: *** [Makefile:172: build_libs] Error 2
[openssl-sys 0.9.58] thread 'main' panicked at '
[openssl-sys 0.9.58] 
[openssl-sys 0.9.58] 
[openssl-sys 0.9.58] Error building OpenSSL:
[openssl-sys 0.9.58]     Command: "make" "build_libs"
[openssl-sys 0.9.58]     Exit status: exit code: 2
[openssl-sys 0.9.58] 
[openssl-sys 0.9.58] 
[openssl-sys 0.9.58]     ', C:\Users\Rocky\.cargo\registry\src\github.com-1ecc6299db9ec823\openssl-src-111.10.0+1.1.1g\src\lib.rs:386:13
[openssl-sys 0.9.58] stack backtrace:
[openssl-sys 0.9.58]    0:        0x13f30dacf - std::sys_common::backtrace::_print::{{impl}}::fmt
[openssl-sys 0.9.58]                                at /rustc/49cae55760da0a43428eba73abcb659bb70cf2e4\/src\libstd\sys_common\backtrace.rs:59
[openssl-sys 0.9.58]    1:        0x13f32846b - core::fmt::write
[openssl-sys 0.9.58]                                at /rustc/49cae55760da0a43428eba73abcb659bb70cf2e4\/src\libcore\fmt\mod.rs:1069
[openssl-sys 0.9.58]    2:        0x13f3087bc - std::io::Write::write_fmt<std::sys::windows::stdio::Stderr>
[openssl-sys 0.9.58]                                at /rustc/49cae55760da0a43428eba73abcb659bb70cf2e4\/src\libstd\io\mod.rs:1505
[openssl-sys 0.9.58]    3:        0x13f312b7c - std::panicking::default_hook::{{closure}}
[openssl-sys 0.9.58]                                at /rustc/49cae55760da0a43428eba73abcb659bb70cf2e4\/src\libstd\panicking.rs:198
[openssl-sys 0.9.58]    4:        0x13f3127bf - std::panicking::default_hook
[openssl-sys 0.9.58]                                at /rustc/49cae55760da0a43428eba73abcb659bb70cf2e4\/src\libstd\panicking.rs:220
[openssl-sys 0.9.58]    5:        0x13f313367 - std::panicking::rust_panic_with_hook
[openssl-sys 0.9.58]                                at /rustc/49cae55760da0a43428eba73abcb659bb70cf2e4\/src\libstd\panicking.rs:518
[openssl-sys 0.9.58]    6:        0x13f312eef - std::panicking::begin_panic_handler
[openssl-sys 0.9.58]                                at /rustc/49cae55760da0a43428eba73abcb659bb70cf2e4\/src\libstd\panicking.rs:419
[openssl-sys 0.9.58]    7:        0x13f312e5c - std::panicking::begin_panic_fmt
[openssl-sys 0.9.58]                                at /rustc/49cae55760da0a43428eba73abcb659bb70cf2e4\/src\libstd\panicking.rs:373
[openssl-sys 0.9.58]    8:        0x13f2630d4 - openssl_src::Build::run_command
[openssl-sys 0.9.58]                                at C:\Users\Rocky\.cargo\registry\src\github.com-1ecc6299db9ec823\openssl-src-111.10.0+1.1.1g\src\lib.rs:386
[openssl-sys 0.9.58]    9:        0x13f26237d - openssl_src::Build::build
[openssl-sys 0.9.58]                                at C:\Users\Rocky\.cargo\registry\src\github.com-1ecc6299db9ec823\openssl-src-111.10.0+1.1.1g\src\lib.rs:360
[openssl-sys 0.9.58]   10:        0x13f1d24a4 - build_script_main::find_vendored::get_openssl
[openssl-sys 0.9.58]                                at C:\Users\Rocky\.cargo\registry\src\github.com-1ecc6299db9ec823\openssl-sys-0.9.58\build\find_vendored.rs:5
[openssl-sys 0.9.58]   11:        0x13f1c5aac - build_script_main::find_openssl
[openssl-sys 0.9.58]                                at C:\Users\Rocky\.cargo\registry\src\github.com-1ecc6299db9ec823\openssl-sys-0.9.58\build\main.rs:52
[openssl-sys 0.9.58]   12:        0x13f1c5bcb - build_script_main::main
[openssl-sys 0.9.58]                                at C:\Users\Rocky\.cargo\registry\src\github.com-1ecc6299db9ec823\openssl-sys-0.9.58\build\main.rs:63
[openssl-sys 0.9.58]   13:        0x13f1d462b - std::rt::lang_start::{{closure}}<()>
[openssl-sys 0.9.58]                                at /rustc/49cae55760da0a43428eba73abcb659bb70cf2e4\src\libstd\rt.rs:67
[openssl-sys 0.9.58]   14:        0x13f31357a - std::rt::lang_start_internal
[openssl-sys 0.9.58]                                at /rustc/49cae55760da0a43428eba73abcb659bb70cf2e4\/src\libstd\rt.rs:51
[openssl-sys 0.9.58]   15:        0x13f1d4603 - std::rt::lang_start<()>
[openssl-sys 0.9.58]                                at /rustc/49cae55760da0a43428eba73abcb659bb70cf2e4\src\libstd\rt.rs:67
[openssl-sys 0.9.58]   16:        0x13f1c8dc0 - main
[openssl-sys 0.9.58]   17:        0x13f32d050 - __scrt_common_main_seh
[openssl-sys 0.9.58]                                at d:\A01\_work\6\s\src\vctools\crt\vcstartup\src\startup\exe_common.inl:288
[openssl-sys 0.9.58]   18:         0x77a7556d - BaseThreadInitThunk
[openssl-sys 0.9.58]   19:         0x77bd372d - RtlUserThreadStart
Error building OpenSSL: Command: "make" "build_libs" Exit status: exit code: 2
Error building OpenSSL:
    Command: "make" "build_libs"
    Exit status: exit code: 2


    ', C:\Users\Rocky\.cargo\registry\src\github.com-1ecc6299db9ec823\openssl-src-111.10.0+1.1.1g\src\lib.rs:386:13
stack backtrace:
   0:        0x13f30dacf - std::sys_common::backtrace::_print::{{impl}}::fmt
                               at /rustc/49cae55760da0a43428eba73abcb659bb70cf2e4\/src\libstd\sys_common\backtrace.rs:59
   1:        0x13f32846b - core::fmt::write
                               at /rustc/49cae55760da0a43428eba73abcb659bb70cf2e4\/src\libcore\fmt\mod.rs:1069
   2:        0x13f3087bc - std::io::Write::write_fmt<std::sys::windows::stdio::Stderr>
                               at /rustc/49cae55760da0a43428eba73abcb659bb70cf2e4\/src\libstd\io\mod.rs:1505
   3:        0x13f312b7c - std::panicking::default_hook::{{closure}}
                               at /rustc/49cae55760da0a43428eba73abcb659bb70cf2e4\/src\libstd\panicking.rs:198
   4:        0x13f3127bf - std::panicking::default_hook
                               at /rustc/49cae55760da0a43428eba73abcb659bb70cf2e4\/src\libstd\panicking.rs:220
   5:        0x13f313367 - std::panicking::rust_panic_with_hook
                               at /rustc/49cae55760da0a43428eba73abcb659bb70cf2e4\/src\libstd\panicking.rs:518
   6:        0x13f312eef - std::panicking::begin_panic_handler
                               at /rustc/49cae55760da0a43428eba73abcb659bb70cf2e4\/src\libstd\panicking.rs:419
   7:        0x13f312e5c - std::panicking::begin_panic_fmt
                               at /rustc/49cae55760da0a43428eba73abcb659bb70cf2e4\/src\libstd\panicking.rs:373
   8:        0x13f2630d4 - openssl_src::Build::run_command
                               at C:\Users\Rocky\.cargo\registry\src\github.com-1ecc6299db9ec823\openssl-src-111.10.0+1.1.1g\src\lib.rs:386
   9:        0x13f26237d - openssl_src::Build::build
                               at C:\Users\Rocky\.cargo\registry\src\github.com-1ecc6299db9ec823\openssl-src-111.10.0+1.1.1g\src\lib.rs:360
  10:        0x13f1d24a4 - build_script_main::find_vendored::get_openssl
                               at C:\Users\Rocky\.cargo\registry\src\github.com-1ecc6299db9ec823\openssl-sys-0.9.58\build\find_vendored.rs:5
  11:        0x13f1c5aac - build_script_main::find_openssl
                               at C:\Users\Rocky\.cargo\registry\src\github.com-1ecc6299db9ec823\openssl-sys-0.9.58\build\main.rs:52
  12:        0x13f1c5bcb - build_script_main::main
                               at C:\Users\Rocky\.cargo\registry\src\github.com-1ecc6299db9ec823\openssl-sys-0.9.58\build\main.rs:63
  13:        0x13f1d462b - std::rt::lang_start::{{closure}}<()>
                               at /rustc/49cae55760da0a43428eba73abcb659bb70cf2e4\src\libstd\rt.rs:67
  14:        0x13f31357a - std::rt::lang_start_internal
                               at /rustc/49cae55760da0a43428eba73abcb659bb70cf2e4\/src\libstd\rt.rs:51
  15:        0x13f1d4603 - std::rt::lang_start<()>
                               at /rustc/49cae55760da0a43428eba73abcb659bb70cf2e4\src\libstd\rt.rs:67
  16:        0x13f1c8dc0 - main
  17:        0x13f32d050 - __scrt_common_main_seh
                               at d:\A01\_work\6\s\src\vctools\crt\vcstartup\src\startup\exe_common.inl:288
  18:         0x77a7556d - BaseThreadInitThunk
  19:         0x77bd372d - RtlUserThreadStart

windows vendored openssl doesn't statically link

Moving here discussion from sfackler/rust-openssl#1398

Seems that on MSVC windows the library are always built as dlls, unless the crt-static feature is enabled. This piece of code is omitting the no-shared configuration argument to the Configure script, resulting in dll being built and binaries linked against openssl-sys still requiring dll to be installed or available in PATH.

Forcing that no-static argument, allows vendored openssl to link correctly.

I don't think that the above linked configuration is correct: from what I read, crt-static is something related to the base windows libraries and should not affect the linking of a library such as openssl; besides, openssl-sys already takes care of telling cargo to link correctly the windows runtime by properly adding:

cargo:rustc-link-lib=static=libssl
cargo:rustc-link-lib=static=libcrypto
cargo:rustc-link-lib=dylib=gdi32
cargo:rustc-link-lib=dylib=user32
cargo:rustc-link-lib=dylib=crypt32
cargo:rustc-link-lib=dylib=ws2_32
cargo:rustc-link-lib=dylib=advapi32

v300.0.0+3.0.0 Failed to build from crates.io

If I tried to cargo build your testcrate by replacing

[build-dependencies]
openssl-src = { path = ".." }

with

[build-dependencies]
openssl-src = "*"

I runned cargo build and I have the following error:

[/tmp/openssl-src-rs/testcrate] $ cargo build
    Updating crates.io index
   Compiling cc v1.0.70
   Compiling libc v0.2.101
   Compiling openssl-src v300.0.0+3.0.0
   Compiling testcrate v0.1.0 (/tmp/openssl-src-rs/testcrate)
error: failed to run custom build command for `testcrate v0.1.0 (/tmp/openssl-src-rs/testcrate)`

Caused by:
  process didn't exit successfully: `/tmp/openssl-src-rs/target/debug/build/testcrate-13aed75ca5398236/build-script-build` (exit status: 101)
  --- stdout
  cargo:rerun-if-changed=build.rs
  CC_x86_64-unknown-linux-gnu = None
  CC_x86_64_unknown_linux_gnu = None
  HOST_CC = None
  CC = None
  CFLAGS_x86_64-unknown-linux-gnu = None
  CFLAGS_x86_64_unknown_linux_gnu = None
  HOST_CFLAGS = None
  CFLAGS = None
  CRATE_CC_NO_DEFAULTS = None
  DEBUG = Some("true")
  CARGO_CFG_TARGET_FEATURE = Some("fxsr,sse,sse2")
  running "perl" "./Configure" "--prefix=/tmp/openssl-src-rs/target/debug/build/testcrate-bf767f3278c421fb/out/openssl-build/install" "no-dso" "no-shared" "no-ssl3" "no-unit-test" "no-comp" "no-zlib" "no-zlib-dynamic" "--libdir=lib" "no-legacy" "no-md2" "no-rc5" "no-weak-ssl-ciphers" "no-camellia" "no-idea" "no-seed" "linux-x86_64" "-O2" "-ffunction-sections" "-fdata-sections" "-fPIC" "-g" "-fno-omit-frame-pointer" "-m64"
  Configuring OpenSSL version 3.0.0 for target linux-x86_64
  Using os-specific seed configuration

  --- stderr

  Failure!  Makefile wasn't produced.
  Please read INSTALL.md and associated NOTES-* files.  You may also have to
  look over your available compiler tool chain or change your configuration.

  Something went wrong with /tmp/openssl-src-rs/target/debug/build/testcrate-bf767f3278c421fb/out/openssl-build/build/src/fuzz/build.info: No such file or directory
  thread 'main' panicked at '


  Error configuring OpenSSL build:
      Command: "perl" "./Configure" "--prefix=/tmp/openssl-src-rs/target/debug/build/testcrate-bf767f3278c421fb/out/openssl-build/install" "no-dso" "no-shared" "no-ssl3" "no-unit-test" "no-comp" "no-zlib" "no-zlib-dynamic" "--libdir=lib" "no-legacy" "no-md2" "no-rc5" "no-weak-ssl-ciphers" "no-camellia" "no-idea" "no-seed" "linux-x86_64" "-O2" "-ffunction-sections" "-fdata-sections" "-fPIC" "-g" "-fno-omit-frame-pointer" "-m64"
      Exit status: exit status: 2


      ', /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/openssl-src-300.0.0+3.0.0/src/lib.rs:482:13
  note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace

--- stderr: ***-android-gcc: fatal error: no input files

Hello

I use hyper with hyper-tls, that use native-tls on ios and android.
On Android, native-tls use openssl-sys, and with the feature: vendored, this crate import openssl-src-rs
my cargo.toml file import native-tls like this. native-tls = { version = "0.2", features = ["vendored"] }

So when I compile on this target:

  • i686-linux-android
  • arm-linux-androideabi
  • aarch64-linux-android

I always have the same error:

--- stderr
i686-linux-android-gcc: fatal error: no input files
compilation terminated.
i686-linux-android-ar: creating libssl.a
i686-linux-android-ar: creating libcrypto.a
./libcrypto.a(cryptlib.o):cryptlib.c:function OPENSSL_showfatal: error: undefined reference to 'stderr'
collect2: error: ld returned 1 exit status
./libcrypto.a(cryptlib.o):cryptlib.c:function OPENSSL_showfatal: error: undefined reference to 'stderr'
...
...

To avoid this problem, in the crate openssl-src-rs, in the file lib.rs, I add 'no-stdio' option to the perl command: configure.

I have just two questions:
Why don't you need to add this option ? and Is it possible to add this modification to the next release ?

Thanks for considering my request,

canonicalize file names so they can be found on windows

C:\build\net\target\wasm32-unknown-unknown\release\build\openssl-sys-965b815f479a83db\out\openssl-build\build\src\pyca-cryptography\vectors\cryptography_vectors\x509\PKITS_data\certpairs\requireExplicitPolicy7subsubsubCARE2RE4CertforwardcrossCertificatePair.cp

this has 260 characters, which blows up the MAX_PATH on windows when the null terminator is added

canonicalizing file paths avoids this issue to allow the extended length path

https://doc.rust-lang.org/std/fs/fn.canonicalize.html

Unable to build against Android NDK since 111.10 with min API < 23 due to missing stderr

error: linking with `./build/linker-wrapper/linker-wrapper.sh` failed: exit code: 1
  |
linking with `./build/linker-wrapper/linker-wrapper.sh` failed: exit code: 1

  = note: "./build/linker-wrapper/linker-wrapper.sh" "-Wl,--as-needed" "-Wl,-z,noexecstack" "-Wl,--allow-multiple-definition" "-L" "~/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/aarch64-linux-android/lib" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.10bwvslfrnmbum0v.rcgu.o" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.10tpb4mpieoc5xqp.rcgu.o" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.12cqhp7rrn2vydxo.rcgu.o" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.13onwyxfdm4h1zpr.rcgu.o" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.13wmtrynv9wgnbu5.rcgu.o" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.14ai9vsbzx4hjtnc.rcgu.o" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.14xpiybv6xvn4l1b.rcgu.o" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.150s927r3ycgwnfl.rcgu.o" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.160oe2a6xhphfkif.rcgu.o" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.17ddijblbgh8iy00.rcgu.o" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.17rj892vlv4pxjdd.rcgu.o" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.19agb2dfy0z7ytbb.rcgu.o" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.19zjnk9otqbqu7dy.rcgu.o" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.1a0skxsc0in5oi9q.rcgu.o" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.1avhadfygidl6qt1.rcgu.o" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.1b92zrxgszsiup99.rcgu.o" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.1bnkks5rcp3gs0r3.rcgu.o" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.1cqfj61pxjq0vnwu.rcgu.o" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.1e07zpzhfw8ig2ca.rcgu.o" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.1e41nepnhhrsip07.rcgu.o" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.1egompnyf4g8b1bd.rcgu.o" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.1f0s1pa8z1h6tbkl.rcgu.o" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.1f5qpsu2cmr504rq.rcgu.o" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.1f8y1mkqqa4t4mu6.rcgu.o" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.1ges5hj402ww8n6u.rcgu.o" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.1gknr2nxl9w3ymhb.rcgu.o" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.1gnrz4u5on770zkn.rcgu.o" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.1h7ysyqxcd5rr1s7.rcgu.o" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.1hi1i6mecspnw8wx.rcgu.o" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.1hozs6tusoaadete.rcgu.o" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.1iclyn0dwv16hsmq.rcgu.o" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.1il2btcjfv3gsl6o.rcgu.o" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.1ilysh745sodojvn.rcgu.o" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.1kicuctnt9ex9et.rcgu.o" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.1ks4x3ya85m0h9er.rcgu.o" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.1meur8gbnrw4agm.rcgu.o" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.1o9bpqajwusdio6t.rcgu.o" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.1owxh3xxrnrpzxtx.rcgu.o" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.1pc07l2fmznxjydw.rcgu.o" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.1pgvo4ro7iebttxc.rcgu.o" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.1ph55pue0jkk7cy4.rcgu.o" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.1pqavzuna6aw4jh4.rcgu.o" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.1s4kzw692ueph0zs.rcgu.o" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.1s71u7tkwlwwmac8.rcgu.o" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.1s8xspbubo1l5ly6.rcgu.o" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.1shky5o8691oljcy.rcgu.o" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.1u1ngbleockob913.rcgu.o" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.1u6lzrm9o3oxr6jw.rcgu.o" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.1udpwlropzjsnhwk.rcgu.o" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.1ug42dgvqtwprtwl.rcgu.o" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.1vltmr0ris7c9cy.rcgu.o" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.1x0ghmoucogfw46u.rcgu.o" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.1xq4sabpij6pbhfs.rcgu.o" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.1z0rw9rbalhg3ldk.rcgu.o" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.20tmtxi2xnfkwsww.rcgu.o" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.213xq0om8nng3vw8.rcgu.o" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.215pvf39k6xcewbh.rcgu.o" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.21t9yc4ociev87vw.rcgu.o" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.270033pb1cqo7vd2.rcgu.o" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.270lauk6w74onyri.rcgu.o" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.27v815ltnzr0f5ax.rcgu.o" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.28vxtny1c6l5rqtc.rcgu.o" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.296jju91k7276g98.rcgu.o" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.29xp86yy5c9r7syx.rcgu.o" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.2aft35wcchzq025k.rcgu.o" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.2b9r4nrm66o0bu7f.rcgu.o" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.2bgwmsul1cu7lypu.rcgu.o" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.2dciqbe1pnkmmpta.rcgu.o" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.2ffkoc7fvavdyahd.rcgu.o" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.2fgzdtpm7ebzhy4g.rcgu.o" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.2fx5etnbftn9hmua.rcgu.o" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.2he1iz6wefgzxbne.rcgu.o" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.2ia3l2oxip16t8mt.rcgu.o" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.2irhqwp0kh0khkho.rcgu.o" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.2lejml3vlf0dwp70.rcgu.o" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.2lxsvrld44ka04vo.rcgu.o" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.2oehnp9lglvxve9j.rcgu.o" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.2pahmgcz8e2x3mcf.rcgu.o" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.2q0xnopw0s1sbvmc.rcgu.o" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.2q61zuaf78mmfn29.rcgu.o" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.2qzy6o09e2nkunnl.rcgu.o" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.2sawmbbk3qnmxtsi.rcgu.o" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.2si8z80wkv65mlhc.rcgu.o" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.2sxs11owec8nhbkb.rcgu.o" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.2umhq7izwe6gla6f.rcgu.o" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.2vc8d7g6hteaku1j.rcgu.o" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.2vf0496whqrx4ovd.rcgu.o" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.2vs7k98rgls1qub7.rcgu.o" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.2wdkiny87lflqgc5.rcgu.o" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.2wicdcf3j0q4vby0.rcgu.o" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.2ynzwk9udhuw9ny1.rcgu.o" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.2zc7xa121bk3fw7h.rcgu.o" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.30e3wjlg2qxoukgk.rcgu.o" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.30pawh6v0d43v84z.rcgu.o" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.31p097yaduhho964.rcgu.o" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.320p38vdzjx70v9n.rcgu.o" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.33nd2uqcsq4q37tt.rcgu.o" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.36mrgnxzzotfaibu.rcgu.o" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.36zkqvly7avom3r9.rcgu.o" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.3707ea9dxmiatpbb.rcgu.o" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.384y646v8edp27i9.rcgu.o" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.387pwb7dphaisgpq.rcgu.o" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.388p07yrg8bwhy7l.rcgu.o" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.3a1ytauba4xepkxe.rcgu.o" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.3bwpsdx2l71ff7ws.rcgu.o" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.3f2t7c7vq3p60goz.rcgu.o" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.3g8x5wi06sp7ul51.rcgu.o" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.3hjppfujao8gl6i5.rcgu.o" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.3hpz3m2rzee824p0.rcgu.o" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.3i45l2c2cjyks3nf.rcgu.o" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.3iicb2c1jr7wqp5u.rcgu.o" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.3l7dwjkay9g8ynou.rcgu.o" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.3ls8iagjyfyppftj.rcgu.o" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.3mto034css7xyom4.rcgu.o" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.3o8elxs84280m1g2.rcgu.o" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.3ohtr3o9tq6ckfkq.rcgu.o" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.3otf8dnrqv1oize9.rcgu.o" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.3p2sjdzqf094gmgp.rcgu.o" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.3p9o47mafgf8zace.rcgu.o" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.3pieeqljs370mcx0.rcgu.o" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.3pjqqv1rr632wpoh.rcgu.o" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.3qxmsi5kgc5qorjf.rcgu.o" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.3rb22sga65y607wy.rcgu.o" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.3rz8ixk776vnb8f2.rcgu.o" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.3sjm71nqiimdpboj.rcgu.o" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.3tw4qft2owa2fj0l.rcgu.o" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.3unxew9yvjrwh4it.rcgu.o" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.3v7l1cwfg0cinh9v.rcgu.o" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.3w3vzgsg8w78xuk0.rcgu.o" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.3wsnbzjgayiz7fna.rcgu.o" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.3wvc3e9f6bv5z3wi.rcgu.o" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.3xyr3jzrkg7oncuz.rcgu.o" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.3z74y2h797dhcynh.rcgu.o" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.3zfmyqojjnjbug4x.rcgu.o" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.404u2jlk5tf4sq8z.rcgu.o" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.40v7amgmmom363p3.rcgu.o" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.42dxit6jxbosp5aq.rcgu.o" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.4460bqyl4muzxtfq.rcgu.o" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.44sc7lntcroo0pct.rcgu.o" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.45ebnnrouyejxor0.rcgu.o" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.45l184hs848yua08.rcgu.o" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.47ibdck3kz4soscv.rcgu.o" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.47lgo6si77vaifzi.rcgu.o" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.4914bkiqv1de4o0t.rcgu.o" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.4cndg61kyuqrkzsx.rcgu.o" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.4d754uf0l2rgrzqn.rcgu.o" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.4d8xvog59mhafv6z.rcgu.o" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.4djvujzti7q5dwoh.rcgu.o" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.4efnndrpfiniqiji.rcgu.o" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.4huk0ikfh5vmtpyo.rcgu.o" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.4hvz1azhb2d9no6l.rcgu.o" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.4i3l2l5ltlnu64if.rcgu.o" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.4km7nllas93a8pac.rcgu.o" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.4mxu9lbwni0fp3ln.rcgu.o" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.4nc1udoyq7qqvi9f.rcgu.o" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.4o72c08knzfeubok.rcgu.o" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.4peria8y3re3qs4f.rcgu.o" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.4pouwt6bonwighk2.rcgu.o" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.4qgcttu9q3aam275.rcgu.o" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.4ro496g3mqz3asax.rcgu.o" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.4s3ty7ip07355970.rcgu.o" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.4soj8c2f8735g9uu.rcgu.o" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.4sw5w9ok4zd9rwbu.rcgu.o" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.4sxq54384fiwnk.rcgu.o" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.4tj0ypcyaht1jpzw.rcgu.o" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.4tpn9wf1763p6agi.rcgu.o" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.4twrh6wi830ug844.rcgu.o" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.4ubu8nsypsorfdea.rcgu.o" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.4v87019ukm7wmhzj.rcgu.o" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.4vejjx49ef4w2wpz.rcgu.o" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.4x93ggebrmd3ztdo.rcgu.o" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.4y1pa60mjiwctvq1.rcgu.o" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.4y5s13i1n24656qh.rcgu.o" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.50p4kvhvv31ssnx4.rcgu.o" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.51nf1h1owu5rolp0.rcgu.o" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.52f1048chogjhcap.rcgu.o" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.52wtuh790uzmg3je.rcgu.o" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.53gcbqfunj8u9am.rcgu.o" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.54ms2pg30acxqcvx.rcgu.o" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.54ovqcergo5w54ei.rcgu.o" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.56bk9pcl8x37wbn8.rcgu.o" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.56zu25exrw7p80qb.rcgu.o" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.582woyuy0h9c16hb.rcgu.o" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.58btnbwdebt5vbji.rcgu.o" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.58hainwfw8xcc2sv.rcgu.o" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.5aqgu2tl1wn68b79.rcgu.o" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.5ba60euv29l52rfe.rcgu.o" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.5bi7sqdb1f3j5rt.rcgu.o" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.5c8bwp60djyt1r6l.rcgu.o" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.5d94rmgoexjlbim0.rcgu.o" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.5gktrp3i0sosuluv.rcgu.o" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.5ix275lx6k69opp.rcgu.o" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.7bv5rsqvqxg3wju.rcgu.o" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.90un70d08a2qk17.rcgu.o" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.9788lvnsx8ixmdx.rcgu.o" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.9j2l2mi8l8lyxea.rcgu.o" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.9v4w8i2c27vca8n.rcgu.o" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.bbulhx8l0tqnd8f.rcgu.o" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.bx6tx3pqjc07b5c.rcgu.o" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.c5904bfylu1azl6.rcgu.o" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.dnremo267uig8ea.rcgu.o" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.ec0e6zyaoyho2yo.rcgu.o" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.env76o5uog3t38c.rcgu.o" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.fhf1mi0u9rhoyvr.rcgu.o" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.fj42lz6z7d8waxb.rcgu.o" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.hju5im1dbsfja6f.rcgu.o" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.hl2j4o8azup3yse.rcgu.o" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.hqg10lflu1a8j9t.rcgu.o" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.i5i43dyhgh7xafp.rcgu.o" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.iah0iie3716s0on.rcgu.o" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.ifdd7mmwdwynhu4.rcgu.o" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.miduy29wamm2o3s.rcgu.o" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.nu4wvck4yi8xway.rcgu.o" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.onaf71yk39ong0k.rcgu.o" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.oz05g7itxboln1o.rcgu.o" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.q36bgob8phj80j0.rcgu.o" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.rhoywo9ub5pe9wl.rcgu.o" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.tlfdt3bh11ear6.rcgu.o" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.u6xdd7gjalpwg0b.rcgu.o" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.uvjvsvai3ndqon6.rcgu.o" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.vbn09txekhnavzr.rcgu.o" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.vfdru8vttb069lu.rcgu.o" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.w6csfymguqsdo8p.rcgu.o" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.wf4wffjtq0kf2yd.rcgu.o" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.wg570lmvn4aoaty.rcgu.o" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.wnlihlq7lb5tunq.rcgu.o" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.wrbjy4bvixhe9qz.rcgu.o" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.wuqpve2hfcal8a7.rcgu.o" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.xbw2uqgxr842sm8.rcgu.o" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.xc2qwfrwtm7jzyx.rcgu.o" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.ys3uvkl09prhsdu.rcgu.o" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.zjccxvbzhj4p78o.rcgu.o" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.zsaxdl3zqtbdhwx.rcgu.o" "-o" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.qyf2azq2r3esn5i.rcgu.o" "-Wl,--gc-sections" "-pie" "-Wl,-zrelro" "-Wl,-znow" "-nodefaultlibs" "-L" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps" "-L" "./core/src/main/rust/shadowsocks-rust/target/debug/deps" "-L" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/build/libsodium-sys-eb71c0a1ee532d56/out/installed/lib" "-L" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/build/openssl-sys-b6e7e47e87fd3812/out/openssl-build/install/lib" "-L" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/build/ring-bf85d81eb41e3bab/out" "-L" "~/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/aarch64-linux-android/lib" "-Wl,-Bstatic" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/libenv_logger-80e77152bd390b78.rlib" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/libtermcolor-2da15c849b3c5b36.rlib" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/libchrono-0d66191ded83c864.rlib" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/libnum_integer-eebd92eaf9e710d7.rlib" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/libnum_traits-fcb92c4e99f21bd0.rlib" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/libtime-906488714a113882.rlib" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/libshadowsocks-e7ad71adfc7bdfa1.rlib" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/libserde_json-4613f1bb9ddb14df.rlib" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/libryu-69ad766615d88829.rlib" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/libjson5-38c48365ca08d547.rlib" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/libpest-800adf14ace9fbeb.rlib" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/libucd_trie-35d18e9d9000a201.rlib" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/libserde_urlencoded-c4955f61a05b150f.rlib" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/libitoa-a280ed6d33534d42.rlib" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/libdtoa-661aba5a076f3c72.rlib" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/libsocket2-146e87ac53b8afb0.rlib" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/libtrust_dns_proto-91073d46c5246937.rlib" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/libthiserror-45b2648c8795c3b4.rlib" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/libbacktrace-861c6a177258bf8c.rlib" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/libminiz_oxide-e151c6d22f0decce.rlib" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/libadler-4b7a776b1b397335.rlib" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/libobject-d36526abe690d0d8.rlib" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/libaddr2line-7d2d570ca43f8d37.rlib" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/libgimli-c1daad7df5a8043c.rlib" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/librustc_demangle-7cb90bce3b965746.rlib" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/libbyte_string-7a185dddbe780a68.rlib" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/libring-2634ad46584a3a77.rlib" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/libuntrusted-67c8d75c5c0ea2aa.rlib" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/libmd5-4cb02351ab4f904f.rlib" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/liblibsodium_sys-08ce2c66adbe1dbc.rlib" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/libsha1-2e168be58ce1df95.rlib" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/libfake_simd-c8602aa77cbf76eb.rlib" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/libopaque_debug-ef8c224a372d6204.rlib" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/libblock_buffer-831e246554c93e90.rlib" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/libblock_padding-2d659ffb330c6738.rlib" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/libbyte_tools-c869261c387a35da.rlib" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/libbyteorder-609d430f5a3528a8.rlib" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/libhkdf-80e20f791d2739cd.rlib" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/libhmac-522b331ac9373d9d.rlib" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/libcrypto_mac-1417ca37638e4758.rlib" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/libsubtle-617c9380e2d8902d.rlib" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/libdigest-35abcb2e67c8df2c.rlib" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/libgeneric_array-e741cc84120cb6c9.rlib" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/libtypenum-b6a09db3dea8adb6.rlib" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/libopenssl-e57594a5e0715789.rlib" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/libopenssl_sys-5886398c7e213229.rlib" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/libforeign_types-5cd8e81762370997.rlib" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/libforeign_types_shared-3bb76ea718506d8b.rlib" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/libspin-55763c1ce4f2f675.rlib" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/liblru_time_cache-6c9d95345bc2fd28.rlib" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/libbloomfilter-862efff4177ce005.rlib" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/libsiphasher-93b73efb632cc592.rlib" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/librand-baf56a3b21b948e1.rlib" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/librand_chacha-7a5e673820c6c809.rlib" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/libppv_lite86-fbcd529f983bd4ce.rlib" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/librand_core-181538a1fc32058f.rlib" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/libgetrandom-7cfbde6e64091adb.rlib" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/libbit_vec-fdcf1b60e1f081fe.rlib" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/liburl-1ba724a8d0f2ccaf.rlib" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/libpercent_encoding-356b745492e4b98c.rlib" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/libidna-a0ba3b70f0caeb99.rlib" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/libunicode_normalization-311318ee5808440e.rlib" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/libtinyvec-481e6b21efc0b291.rlib" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/libunicode_bidi-8dd14ba0eb8a4e99.rlib" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/libmatches-dab956b28fefcc85.rlib" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/libstrum-99a8f5075ca75f38.rlib" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/libserde-67360f02ffd74da2.rlib" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/libbase64-e4d646cad5897e60.rlib" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/libregex-23ff9c52beae8a38.rlib" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/libthread_local-72c7d6c2dd67612c.rlib" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/libregex_syntax-8564c6d96cc83b75.rlib" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/libaho_corasick-39e05fe1920dccab.rlib" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/libiprange-9dafb60590df0ed3.rlib" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/libipnet-c5e2811868c25216.rlib" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/libtokio-a613005f3999292c.rlib" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/libsignal_hook_registry-89fd107bc2caa03c.rlib" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/libarc_swap-2fd34876d88bc12d.rlib" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/libnum_cpus-e6e1a5f93de9672a.rlib" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/libfnv-bbbfcc4fc742097a.rlib" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/libmio_uds-2eb7c6ffe578e3d9.rlib" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/libmio-8fb6092fb19a9e9c.rlib" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/libiovec-0e74d64367d7baf9.rlib" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/libnet2-e9048ff0fc3b5d71.rlib" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/liblazy_static-d32ce7b13df82901.rlib" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/libparking_lot-728c68281a5d3f6e.rlib" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/libparking_lot_core-a80b27087fcd635e.rlib" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/libsmallvec-86e40afdd0823a82.rlib" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/liblock_api-446d0f8f65fc8292.rlib" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/libscopeguard-fc80535d22bb2d19.rlib" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/libbytes-83ed98a10b2cba22.rlib" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/libpin_project_lite-d94c1eb0b5369eb8.rlib" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/liblog-875fc20c4a790f81.rlib" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/libcfg_if-23b0d61ef160de50.rlib" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/libfutures-18173ab028d7363b.rlib" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/libfutures_executor-d45465239b7cc1fb.rlib" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/libfutures_util-7b178cfce42aae73.rlib" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/libmemchr-a2e0a34cc31abf68.rlib" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/libproc_macro_nested-eda0997d555277a9.rlib" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/libfutures_io-a593cdd79e58561a.rlib" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/libslab-031e528be9167f79.rlib" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/libfutures_channel-445ed87be406d196.rlib" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/libpin_project-a341e552ab01cd48.rlib" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/libfutures_sink-6e4f277fabc6d006.rlib" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/libfutures_task-1ea6d4422351aeab.rlib" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/libonce_cell-d4dd52d4abe3b4b7.rlib" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/libpin_utils-8186260c69bc75f8.rlib" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/libfutures_core-b84374c8a2697f6a.rlib" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/libclap-80fc212bd5d5dcf9.rlib" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/libvec_map-589970c626c67433.rlib" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/libtextwrap-6bb12710080a693d.rlib" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/libunicode_width-1380d9f64ea47a3a.rlib" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/libterm_size-b4ae7aef3e29f8e4.rlib" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/libstrsim-c72b59e305663b51.rlib" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/libbitflags-c62204a307b348ed.rlib" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/libatty-6bb703328ea23599.rlib" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/liblibc-21dc611e93e4459a.rlib" "./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/libansi_term-347c9c09e432c513.rlib" "-Wl,--start-group" "~/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/aarch64-linux-android/lib/libstd-ab3232b4d652d002.rlib" "~/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/aarch64-linux-android/lib/libpanic_unwind-e794beac2cc6ef27.rlib" "~/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/aarch64-linux-android/lib/libhashbrown-d918603ed82cf366.rlib" "~/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/aarch64-linux-android/lib/librustc_std_workspace_alloc-d0dc1db9d66d85a1.rlib" "~/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/aarch64-linux-android/lib/libbacktrace-822e8dcc452ffe61.rlib" "~/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/aarch64-linux-android/lib/libbacktrace_sys-95cd284d8b30160d.rlib" "~/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/aarch64-linux-android/lib/librustc_demangle-c3b5e414f73a0a97.rlib" "~/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/aarch64-linux-android/lib/libunwind-9f1a4e12c30320eb.rlib" "~/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/aarch64-linux-android/lib/libcfg_if-08177cc18b7b3bb0.rlib" "~/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/aarch64-linux-android/lib/liblibc-c1ace68e582f62b8.rlib" "~/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/aarch64-linux-android/lib/liballoc-21daeff8c26d65f0.rlib" "~/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/aarch64-linux-android/lib/librustc_std_workspace_core-a0429143eaa380bb.rlib" "~/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/aarch64-linux-android/lib/libcore-a15c4f7280fefd65.rlib" "-Wl,--end-group" "~/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/aarch64-linux-android/lib/libcompiler_builtins-ca9a7cdba8be7e7c.rlib" "-Wl,-Bdynamic" "-ldl" "-llog" "-lgcc" "-lc" "-lm"
  = note: ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/libopenssl_sys-5886398c7e213229.rlib(e_afalg.o): In function `afalg_chk_platform':
          ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/build/openssl-sys-b6e7e47e87fd3812/out/openssl-build/build/src/engines/e_afalg.c:788: undefined reference to `stderr'
          ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/build/openssl-sys-b6e7e47e87fd3812/out/openssl-build/build/src/engines/e_afalg.c:788: undefined reference to `stderr'
          ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/libopenssl_sys-5886398c7e213229.rlib(e_afalg.o): In function `afalg_create_sk':
          ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/build/openssl-sys-b6e7e47e87fd3812/out/openssl-build/build/src/engines/e_afalg.c:376: undefined reference to `stderr'
          ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/build/openssl-sys-b6e7e47e87fd3812/out/openssl-build/build/src/engines/e_afalg.c:376: undefined reference to `stderr'
          ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/build/openssl-sys-b6e7e47e87fd3812/out/openssl-build/build/src/engines/e_afalg.c:383: undefined reference to `stderr'
          ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/libopenssl_sys-5886398c7e213229.rlib(e_afalg.o):./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/build/openssl-sys-b6e7e47e87fd3812/out/openssl-build/build/src/engines/e_afalg.c:383: more undefined references to `stderr' follow
          clang: error: linker command failed with exit code 1 (use -v to see invocation)
          $ANDROID_HOME/ndk/21.3.6528147/toolchains/llvm/prebuilt/linux-x86_64/bin/aarch64-linux-android21-clang -Wl,-soname,libsslocal.so -Wl,--as-needed -Wl,-z,noexecstack -Wl,--allow-multiple-definition -L ~/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/aarch64-linux-android/lib ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.10bwvslfrnmbum0v.rcgu.o ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.10tpb4mpieoc5xqp.rcgu.o ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.12cqhp7rrn2vydxo.rcgu.o ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.13onwyxfdm4h1zpr.rcgu.o ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.13wmtrynv9wgnbu5.rcgu.o ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.14ai9vsbzx4hjtnc.rcgu.o ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.14xpiybv6xvn4l1b.rcgu.o ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.150s927r3ycgwnfl.rcgu.o ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.160oe2a6xhphfkif.rcgu.o ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.17ddijblbgh8iy00.rcgu.o ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.17rj892vlv4pxjdd.rcgu.o ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.19agb2dfy0z7ytbb.rcgu.o ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.19zjnk9otqbqu7dy.rcgu.o ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.1a0skxsc0in5oi9q.rcgu.o ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.1avhadfygidl6qt1.rcgu.o ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.1b92zrxgszsiup99.rcgu.o ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.1bnkks5rcp3gs0r3.rcgu.o ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.1cqfj61pxjq0vnwu.rcgu.o ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.1e07zpzhfw8ig2ca.rcgu.o ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.1e41nepnhhrsip07.rcgu.o ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.1egompnyf4g8b1bd.rcgu.o ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.1f0s1pa8z1h6tbkl.rcgu.o ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.1f5qpsu2cmr504rq.rcgu.o ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.1f8y1mkqqa4t4mu6.rcgu.o ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.1ges5hj402ww8n6u.rcgu.o ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.1gknr2nxl9w3ymhb.rcgu.o ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.1gnrz4u5on770zkn.rcgu.o ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.1h7ysyqxcd5rr1s7.rcgu.o ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.1hi1i6mecspnw8wx.rcgu.o ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.1hozs6tusoaadete.rcgu.o ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.1iclyn0dwv16hsmq.rcgu.o ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.1il2btcjfv3gsl6o.rcgu.o ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.1ilysh745sodojvn.rcgu.o ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.1kicuctnt9ex9et.rcgu.o ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.1ks4x3ya85m0h9er.rcgu.o ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.1meur8gbnrw4agm.rcgu.o ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.1o9bpqajwusdio6t.rcgu.o ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.1owxh3xxrnrpzxtx.rcgu.o ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.1pc07l2fmznxjydw.rcgu.o ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.1pgvo4ro7iebttxc.rcgu.o ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.1ph55pue0jkk7cy4.rcgu.o ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.1pqavzuna6aw4jh4.rcgu.o ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.1s4kzw692ueph0zs.rcgu.o ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.1s71u7tkwlwwmac8.rcgu.o ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.1s8xspbubo1l5ly6.rcgu.o ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.1shky5o8691oljcy.rcgu.o ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.1u1ngbleockob913.rcgu.o ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.1u6lzrm9o3oxr6jw.rcgu.o ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.1udpwlropzjsnhwk.rcgu.o ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.1ug42dgvqtwprtwl.rcgu.o ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.1vltmr0ris7c9cy.rcgu.o ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.1x0ghmoucogfw46u.rcgu.o ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.1xq4sabpij6pbhfs.rcgu.o ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.1z0rw9rbalhg3ldk.rcgu.o ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.20tmtxi2xnfkwsww.rcgu.o ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.213xq0om8nng3vw8.rcgu.o ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.215pvf39k6xcewbh.rcgu.o ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.21t9yc4ociev87vw.rcgu.o ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.270033pb1cqo7vd2.rcgu.o ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.270lauk6w74onyri.rcgu.o ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.27v815ltnzr0f5ax.rcgu.o ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.28vxtny1c6l5rqtc.rcgu.o ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.296jju91k7276g98.rcgu.o ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.29xp86yy5c9r7syx.rcgu.o ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.2aft35wcchzq025k.rcgu.o ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.2b9r4nrm66o0bu7f.rcgu.o ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.2bgwmsul1cu7lypu.rcgu.o ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.2dciqbe1pnkmmpta.rcgu.o ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.2ffkoc7fvavdyahd.rcgu.o ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.2fgzdtpm7ebzhy4g.rcgu.o ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.2fx5etnbftn9hmua.rcgu.o ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.2he1iz6wefgzxbne.rcgu.o ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.2ia3l2oxip16t8mt.rcgu.o ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.2irhqwp0kh0khkho.rcgu.o ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.2lejml3vlf0dwp70.rcgu.o ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.2lxsvrld44ka04vo.rcgu.o ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.2oehnp9lglvxve9j.rcgu.o ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.2pahmgcz8e2x3mcf.rcgu.o ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.2q0xnopw0s1sbvmc.rcgu.o ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.2q61zuaf78mmfn29.rcgu.o ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.2qzy6o09e2nkunnl.rcgu.o ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.2sawmbbk3qnmxtsi.rcgu.o ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.2si8z80wkv65mlhc.rcgu.o ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.2sxs11owec8nhbkb.rcgu.o ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.2umhq7izwe6gla6f.rcgu.o ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.2vc8d7g6hteaku1j.rcgu.o ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.2vf0496whqrx4ovd.rcgu.o ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.2vs7k98rgls1qub7.rcgu.o ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.2wdkiny87lflqgc5.rcgu.o ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.2wicdcf3j0q4vby0.rcgu.o ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.2ynzwk9udhuw9ny1.rcgu.o ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.2zc7xa121bk3fw7h.rcgu.o ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.30e3wjlg2qxoukgk.rcgu.o ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.30pawh6v0d43v84z.rcgu.o ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.31p097yaduhho964.rcgu.o ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.320p38vdzjx70v9n.rcgu.o ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.33nd2uqcsq4q37tt.rcgu.o ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.36mrgnxzzotfaibu.rcgu.o ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.36zkqvly7avom3r9.rcgu.o ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.3707ea9dxmiatpbb.rcgu.o ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.384y646v8edp27i9.rcgu.o ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.387pwb7dphaisgpq.rcgu.o ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.388p07yrg8bwhy7l.rcgu.o ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.3a1ytauba4xepkxe.rcgu.o ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.3bwpsdx2l71ff7ws.rcgu.o ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.3f2t7c7vq3p60goz.rcgu.o ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.3g8x5wi06sp7ul51.rcgu.o ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.3hjppfujao8gl6i5.rcgu.o ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.3hpz3m2rzee824p0.rcgu.o ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.3i45l2c2cjyks3nf.rcgu.o ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.3iicb2c1jr7wqp5u.rcgu.o ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.3l7dwjkay9g8ynou.rcgu.o ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.3ls8iagjyfyppftj.rcgu.o ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.3mto034css7xyom4.rcgu.o ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.3o8elxs84280m1g2.rcgu.o ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.3ohtr3o9tq6ckfkq.rcgu.o ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.3otf8dnrqv1oize9.rcgu.o ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.3p2sjdzqf094gmgp.rcgu.o ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.3p9o47mafgf8zace.rcgu.o ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.3pieeqljs370mcx0.rcgu.o ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.3pjqqv1rr632wpoh.rcgu.o ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.3qxmsi5kgc5qorjf.rcgu.o ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.3rb22sga65y607wy.rcgu.o ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.3rz8ixk776vnb8f2.rcgu.o ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.3sjm71nqiimdpboj.rcgu.o ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.3tw4qft2owa2fj0l.rcgu.o ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.3unxew9yvjrwh4it.rcgu.o ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.3v7l1cwfg0cinh9v.rcgu.o ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.3w3vzgsg8w78xuk0.rcgu.o ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.3wsnbzjgayiz7fna.rcgu.o ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.3wvc3e9f6bv5z3wi.rcgu.o ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.3xyr3jzrkg7oncuz.rcgu.o ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.3z74y2h797dhcynh.rcgu.o ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.3zfmyqojjnjbug4x.rcgu.o ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.404u2jlk5tf4sq8z.rcgu.o ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.40v7amgmmom363p3.rcgu.o ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.42dxit6jxbosp5aq.rcgu.o ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.4460bqyl4muzxtfq.rcgu.o ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.44sc7lntcroo0pct.rcgu.o ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.45ebnnrouyejxor0.rcgu.o ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.45l184hs848yua08.rcgu.o ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.47ibdck3kz4soscv.rcgu.o ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.47lgo6si77vaifzi.rcgu.o ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.4914bkiqv1de4o0t.rcgu.o ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.4cndg61kyuqrkzsx.rcgu.o ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.4d754uf0l2rgrzqn.rcgu.o ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.4d8xvog59mhafv6z.rcgu.o ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.4djvujzti7q5dwoh.rcgu.o ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.4efnndrpfiniqiji.rcgu.o ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.4huk0ikfh5vmtpyo.rcgu.o ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.4hvz1azhb2d9no6l.rcgu.o ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.4i3l2l5ltlnu64if.rcgu.o ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.4km7nllas93a8pac.rcgu.o ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.4mxu9lbwni0fp3ln.rcgu.o ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.4nc1udoyq7qqvi9f.rcgu.o ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.4o72c08knzfeubok.rcgu.o ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.4peria8y3re3qs4f.rcgu.o ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.4pouwt6bonwighk2.rcgu.o ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.4qgcttu9q3aam275.rcgu.o ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.4ro496g3mqz3asax.rcgu.o ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.4s3ty7ip07355970.rcgu.o ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.4soj8c2f8735g9uu.rcgu.o ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.4sw5w9ok4zd9rwbu.rcgu.o ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.4sxq54384fiwnk.rcgu.o ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.4tj0ypcyaht1jpzw.rcgu.o ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.4tpn9wf1763p6agi.rcgu.o ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.4twrh6wi830ug844.rcgu.o ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.4ubu8nsypsorfdea.rcgu.o ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.4v87019ukm7wmhzj.rcgu.o ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.4vejjx49ef4w2wpz.rcgu.o ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.4x93ggebrmd3ztdo.rcgu.o ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.4y1pa60mjiwctvq1.rcgu.o ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.4y5s13i1n24656qh.rcgu.o ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.50p4kvhvv31ssnx4.rcgu.o ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.51nf1h1owu5rolp0.rcgu.o ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.52f1048chogjhcap.rcgu.o ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.52wtuh790uzmg3je.rcgu.o ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.53gcbqfunj8u9am.rcgu.o ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.54ms2pg30acxqcvx.rcgu.o ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.54ovqcergo5w54ei.rcgu.o ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.56bk9pcl8x37wbn8.rcgu.o ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.56zu25exrw7p80qb.rcgu.o ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.582woyuy0h9c16hb.rcgu.o ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.58btnbwdebt5vbji.rcgu.o ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.58hainwfw8xcc2sv.rcgu.o ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.5aqgu2tl1wn68b79.rcgu.o ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.5ba60euv29l52rfe.rcgu.o ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.5bi7sqdb1f3j5rt.rcgu.o ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.5c8bwp60djyt1r6l.rcgu.o ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.5d94rmgoexjlbim0.rcgu.o ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.5gktrp3i0sosuluv.rcgu.o ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.5ix275lx6k69opp.rcgu.o ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.7bv5rsqvqxg3wju.rcgu.o ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.90un70d08a2qk17.rcgu.o ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.9788lvnsx8ixmdx.rcgu.o ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.9j2l2mi8l8lyxea.rcgu.o ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.9v4w8i2c27vca8n.rcgu.o ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.bbulhx8l0tqnd8f.rcgu.o ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.bx6tx3pqjc07b5c.rcgu.o ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.c5904bfylu1azl6.rcgu.o ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.dnremo267uig8ea.rcgu.o ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.ec0e6zyaoyho2yo.rcgu.o ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.env76o5uog3t38c.rcgu.o ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.fhf1mi0u9rhoyvr.rcgu.o ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.fj42lz6z7d8waxb.rcgu.o ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.hju5im1dbsfja6f.rcgu.o ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.hl2j4o8azup3yse.rcgu.o ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.hqg10lflu1a8j9t.rcgu.o ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.i5i43dyhgh7xafp.rcgu.o ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.iah0iie3716s0on.rcgu.o ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.ifdd7mmwdwynhu4.rcgu.o ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.miduy29wamm2o3s.rcgu.o ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.nu4wvck4yi8xway.rcgu.o ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.onaf71yk39ong0k.rcgu.o ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.oz05g7itxboln1o.rcgu.o ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.q36bgob8phj80j0.rcgu.o ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.rhoywo9ub5pe9wl.rcgu.o ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.tlfdt3bh11ear6.rcgu.o ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.u6xdd7gjalpwg0b.rcgu.o ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.uvjvsvai3ndqon6.rcgu.o ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.vbn09txekhnavzr.rcgu.o ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.vfdru8vttb069lu.rcgu.o ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.w6csfymguqsdo8p.rcgu.o ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.wf4wffjtq0kf2yd.rcgu.o ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.wg570lmvn4aoaty.rcgu.o ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.wnlihlq7lb5tunq.rcgu.o ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.wrbjy4bvixhe9qz.rcgu.o ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.wuqpve2hfcal8a7.rcgu.o ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.xbw2uqgxr842sm8.rcgu.o ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.xc2qwfrwtm7jzyx.rcgu.o ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.ys3uvkl09prhsdu.rcgu.o ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.zjccxvbzhj4p78o.rcgu.o ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.zsaxdl3zqtbdhwx.rcgu.o -o ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846 ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/sslocal-04795de5e72d3846.qyf2azq2r3esn5i.rcgu.o -Wl,--gc-sections -pie -Wl,-zrelro -Wl,-znow -nodefaultlibs -L ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps -L ./core/src/main/rust/shadowsocks-rust/target/debug/deps -L ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/build/libsodium-sys-eb71c0a1ee532d56/out/installed/lib -L ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/build/openssl-sys-b6e7e47e87fd3812/out/openssl-build/install/lib -L ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/build/ring-bf85d81eb41e3bab/out -L ~/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/aarch64-linux-android/lib -Wl,-Bstatic ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/libenv_logger-80e77152bd390b78.rlib ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/libtermcolor-2da15c849b3c5b36.rlib ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/libchrono-0d66191ded83c864.rlib ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/libnum_integer-eebd92eaf9e710d7.rlib ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/libnum_traits-fcb92c4e99f21bd0.rlib ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/libtime-906488714a113882.rlib ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/libshadowsocks-e7ad71adfc7bdfa1.rlib ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/libserde_json-4613f1bb9ddb14df.rlib ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/libryu-69ad766615d88829.rlib ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/libjson5-38c48365ca08d547.rlib ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/libpest-800adf14ace9fbeb.rlib ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/libucd_trie-35d18e9d9000a201.rlib ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/libserde_urlencoded-c4955f61a05b150f.rlib ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/libitoa-a280ed6d33534d42.rlib ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/libdtoa-661aba5a076f3c72.rlib ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/libsocket2-146e87ac53b8afb0.rlib ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/libtrust_dns_proto-91073d46c5246937.rlib ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/libthiserror-45b2648c8795c3b4.rlib ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/libbacktrace-861c6a177258bf8c.rlib ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/libminiz_oxide-e151c6d22f0decce.rlib ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/libadler-4b7a776b1b397335.rlib ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/libobject-d36526abe690d0d8.rlib ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/libaddr2line-7d2d570ca43f8d37.rlib ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/libgimli-c1daad7df5a8043c.rlib ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/librustc_demangle-7cb90bce3b965746.rlib ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/libbyte_string-7a185dddbe780a68.rlib ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/libring-2634ad46584a3a77.rlib ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/libuntrusted-67c8d75c5c0ea2aa.rlib ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/libmd5-4cb02351ab4f904f.rlib ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/liblibsodium_sys-08ce2c66adbe1dbc.rlib ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/libsha1-2e168be58ce1df95.rlib ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/libfake_simd-c8602aa77cbf76eb.rlib ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/libopaque_debug-ef8c224a372d6204.rlib ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/libblock_buffer-831e246554c93e90.rlib ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/libblock_padding-2d659ffb330c6738.rlib ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/libbyte_tools-c869261c387a35da.rlib ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/libbyteorder-609d430f5a3528a8.rlib ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/libhkdf-80e20f791d2739cd.rlib ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/libhmac-522b331ac9373d9d.rlib ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/libcrypto_mac-1417ca37638e4758.rlib ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/libsubtle-617c9380e2d8902d.rlib ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/libdigest-35abcb2e67c8df2c.rlib ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/libgeneric_array-e741cc84120cb6c9.rlib ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/libtypenum-b6a09db3dea8adb6.rlib ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/libopenssl-e57594a5e0715789.rlib ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/libopenssl_sys-5886398c7e213229.rlib ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/libforeign_types-5cd8e81762370997.rlib ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/libforeign_types_shared-3bb76ea718506d8b.rlib ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/libspin-55763c1ce4f2f675.rlib ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/liblru_time_cache-6c9d95345bc2fd28.rlib ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/libbloomfilter-862efff4177ce005.rlib ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/libsiphasher-93b73efb632cc592.rlib ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/librand-baf56a3b21b948e1.rlib ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/librand_chacha-7a5e673820c6c809.rlib ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/libppv_lite86-fbcd529f983bd4ce.rlib ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/librand_core-181538a1fc32058f.rlib ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/libgetrandom-7cfbde6e64091adb.rlib ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/libbit_vec-fdcf1b60e1f081fe.rlib ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/liburl-1ba724a8d0f2ccaf.rlib ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/libpercent_encoding-356b745492e4b98c.rlib ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/libidna-a0ba3b70f0caeb99.rlib ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/libunicode_normalization-311318ee5808440e.rlib ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/libtinyvec-481e6b21efc0b291.rlib ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/libunicode_bidi-8dd14ba0eb8a4e99.rlib ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/libmatches-dab956b28fefcc85.rlib ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/libstrum-99a8f5075ca75f38.rlib ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/libserde-67360f02ffd74da2.rlib ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/libbase64-e4d646cad5897e60.rlib ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/libregex-23ff9c52beae8a38.rlib ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/libthread_local-72c7d6c2dd67612c.rlib ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/libregex_syntax-8564c6d96cc83b75.rlib ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/libaho_corasick-39e05fe1920dccab.rlib ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/libiprange-9dafb60590df0ed3.rlib ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/libipnet-c5e2811868c25216.rlib ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/libtokio-a613005f3999292c.rlib ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/libsignal_hook_registry-89fd107bc2caa03c.rlib ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/libarc_swap-2fd34876d88bc12d.rlib ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/libnum_cpus-e6e1a5f93de9672a.rlib ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/libfnv-bbbfcc4fc742097a.rlib ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/libmio_uds-2eb7c6ffe578e3d9.rlib ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/libmio-8fb6092fb19a9e9c.rlib ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/libiovec-0e74d64367d7baf9.rlib ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/libnet2-e9048ff0fc3b5d71.rlib ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/liblazy_static-d32ce7b13df82901.rlib ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/libparking_lot-728c68281a5d3f6e.rlib ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/libparking_lot_core-a80b27087fcd635e.rlib ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/libsmallvec-86e40afdd0823a82.rlib ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/liblock_api-446d0f8f65fc8292.rlib ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/libscopeguard-fc80535d22bb2d19.rlib ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/libbytes-83ed98a10b2cba22.rlib ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/libpin_project_lite-d94c1eb0b5369eb8.rlib ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/liblog-875fc20c4a790f81.rlib ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/libcfg_if-23b0d61ef160de50.rlib ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/libfutures-18173ab028d7363b.rlib ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/libfutures_executor-d45465239b7cc1fb.rlib ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/libfutures_util-7b178cfce42aae73.rlib ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/libmemchr-a2e0a34cc31abf68.rlib ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/libproc_macro_nested-eda0997d555277a9.rlib ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/libfutures_io-a593cdd79e58561a.rlib ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/libslab-031e528be9167f79.rlib ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/libfutures_channel-445ed87be406d196.rlib ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/libpin_project-a341e552ab01cd48.rlib ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/libfutures_sink-6e4f277fabc6d006.rlib ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/libfutures_task-1ea6d4422351aeab.rlib ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/libonce_cell-d4dd52d4abe3b4b7.rlib ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/libpin_utils-8186260c69bc75f8.rlib ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/libfutures_core-b84374c8a2697f6a.rlib ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/libclap-80fc212bd5d5dcf9.rlib ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/libvec_map-589970c626c67433.rlib ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/libtextwrap-6bb12710080a693d.rlib ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/libunicode_width-1380d9f64ea47a3a.rlib ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/libterm_size-b4ae7aef3e29f8e4.rlib ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/libstrsim-c72b59e305663b51.rlib ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/libbitflags-c62204a307b348ed.rlib ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/libatty-6bb703328ea23599.rlib ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/liblibc-21dc611e93e4459a.rlib ./core/src/main/rust/shadowsocks-rust/target/aarch64-linux-android/debug/deps/libansi_term-347c9c09e432c513.rlib -Wl,--start-group ~/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/aarch64-linux-android/lib/libstd-ab3232b4d652d002.rlib ~/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/aarch64-linux-android/lib/libpanic_unwind-e794beac2cc6ef27.rlib ~/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/aarch64-linux-android/lib/libhashbrown-d918603ed82cf366.rlib ~/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/aarch64-linux-android/lib/librustc_std_workspace_alloc-d0dc1db9d66d85a1.rlib ~/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/aarch64-linux-android/lib/libbacktrace-822e8dcc452ffe61.rlib ~/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/aarch64-linux-android/lib/libbacktrace_sys-95cd284d8b30160d.rlib ~/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/aarch64-linux-android/lib/librustc_demangle-c3b5e414f73a0a97.rlib ~/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/aarch64-linux-android/lib/libunwind-9f1a4e12c30320eb.rlib ~/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/aarch64-linux-android/lib/libcfg_if-08177cc18b7b3bb0.rlib ~/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/aarch64-linux-android/lib/liblibc-c1ace68e582f62b8.rlib ~/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/aarch64-linux-android/lib/liballoc-21daeff8c26d65f0.rlib ~/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/aarch64-linux-android/lib/librustc_std_workspace_core-a0429143eaa380bb.rlib ~/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/aarch64-linux-android/lib/libcore-a15c4f7280fefd65.rlib -Wl,--end-group ~/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/aarch64-linux-android/lib/libcompiler_builtins-ca9a7cdba8be7e7c.rlib -Wl,-Bdynamic -ldl -llog -lgcc -lc -lm

Related:

From sfackler/rust-openssl#1315.

Cross building for aarch64 platform

Hi,

I use a rust framework to create an apk.
The build from an x86_64 (Windows) host to target aarch64 host.
When building openssl-sys crate, I get C:hostedtoolcachewindowsndkr25bx64toolchains/llvm/prebuilt/windows-x86_64binclang.exe: No such file or directory
C:/hostedtoolcache/windows/ndk/r25b/x64/toolchains is from a Windows env var.
I use cygwin to install right Perl version (Strawberry is not working).
Is openssl-src-rs support cross compilation ?

reproductible issue: https://github.com/Ludea/tauri-mobile
logs: https://github.com/Ludea/tauri-mobile/runs/8202565826?check_suite_focus=true#step:13:309

Unable to build on aarch64-apple-darwin

I am encountering issues with the archiver that ships with brew, it throws this error:

  ar: warning: creating apps/libapps.a
  ranlib: error: Invalid option: '-c'
  ar: warning: creating libcrypto.a
  ar: warning: creating libssl.a
  ranlib: error: Invalid option: '-c'ranlib
  : error: Invalid option: '-c'
  ranlib: error: Invalid option: '-c'
  make: *** [install_dev] Error 1
  thread 'main' panicked at '


  Error installing OpenSSL:
      Command: "make" "install_dev"
      Exit status: exit status: 2


      ', /Users/jacksoncoxson/.cargo/registry/src/github.com-1ecc6299db9ec823/openssl-src-111.18.0+1.1.1n/src/lib.rs:479:13

I am on the latest MacOS, M1 Air.
rustc version 1.59.0

ranlib/ar version Homebrew LLVM version 13.0.1
This works correctly for cross compiling to other targets, but building natively fails.

Configurable build variables

When compiling this crate there's no way to specify any build configuration for OpenSSL. Being able to specify the build configuration allows building a more hardened version of OpenSSL when some features are not required. This means both no-* configuration flags (for example, no-rc2), as well as -D configuration flags (for example -DOPENSSL_NO_HEARTBEATS). This feature would also need to be made available from the openssl crate.

Allow for the path to the perl installation to be specified

Currently, the crate just runs perl which will use the first installation that is in the path.

This this not work on the windows-runner of GitHub actions and fails with the following error:

error: failed to run custom build command for `openssl-sys v0.9.53`

Caused by:
  process didn't exit successfully: `d:\a\create-comit-app\create-comit-app\target\debug\build\openssl-sys-5ec2b21008c71a01\build-script-main` (exit code: 101)
--- stdout
cargo:rustc-cfg=const_fn
running "perl" "./Configure" "--prefix=d:\\a\\create-comit-app\\create-comit-app\\target\\debug\\build\\openssl-sys-935999bfd09d3702\\out\\openssl-build\\install" "no-dso" "no-ssl3" "no-unit-test" "no-comp" "no-zlib" "no-zlib-dynamic" "no-engine" "no-async" "no-asm" "VC-WIN64A"
Configuring OpenSSL version 1.1.1d (0x1010104fL) for VC-WIN64A
Using os-specific seed configuration

--- stderr

******************************************************************************
This perl implementation doesn't produce Windows like paths (with backward
slash directory separators).  Please use an implementation that matches your
building platform.

This Perl version: 5.26.2 for x86_64-msys-thread-multi
******************************************************************************

Adding the already installed version of strawperryperl to the path fixes the issue.

However, it would be nice to have an environment variable that allows one to override the path to the Perl installation. This would make it more obvious, what we need the different Perl installation for.

I am thinking of an env variable like OPENSSL_SRC_PERL_HOME.

Thoughts?

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.