Reputation: 1
I tried to install sea-orm-cli but an error occurred. Probably because sea-orm-cli cannot find paths and link OpenSSL.
error: failed to run custom build command for `openssl-sys v0.9.104`
Caused by:
process didn't exit successfully: `/tmp/cargo-install29ps5e/release/build/openssl-sys-58bfd8327225941d/build-script-main` (exit status: 101)
--- stdout
cargo:rustc-check-cfg=cfg(osslconf, values("OPENSSL_NO_OCB", "OPENSSL_NO_SM4", "OPENSSL_NO_SEED", "OPENSSL_NO_CHACHA", "OPENSSL_NO_CAST", "OPENSSL_NO_IDEA", "OPENSSL_NO_CAMELLIA", "OPENSSL_NO_RC4", "OPENSSL_NO_BF", "OPENSSL_NO_PSK", "OPENSSL_NO_DEPRECATED_3_0", "OPENSSL_NO_SCRYPT", "OPENSSL_NO_SM3", "OPENSSL_NO_RMD160", "OPENSSL_NO_EC2M", "OPENSSL_NO_OCSP", "OPENSSL_NO_CMS", "OPENSSL_NO_COMP", "OPENSSL_NO_SOCK", "OPENSSL_NO_STDIO", "OPENSSL_NO_EC", "OPENSSL_NO_SSL3_METHOD", "OPENSSL_NO_KRB5", "OPENSSL_NO_TLSEXT", "OPENSSL_NO_SRP", "OPENSSL_NO_RFC3779", "OPENSSL_NO_SHA", "OPENSSL_NO_NEXTPROTONEG", "OPENSSL_NO_ENGINE", "OPENSSL_NO_BUF_FREELISTS"))
...
cargo:rerun-if-env-changed=X86_64_UNKNOWN_LINUX_GNU_OPENSSL_LIB_DIR
X86_64_UNKNOWN_LINUX_GNU_OPENSSL_LIB_DIR unset
cargo:rerun-if-env-changed=OPENSSL_LIB_DIR
OPENSSL_LIB_DIR unset
cargo:rerun-if-env-changed=X86_64_UNKNOWN_LINUX_GNU_OPENSSL_INCLUDE_DIR
X86_64_UNKNOWN_LINUX_GNU_OPENSSL_INCLUDE_DIR unset
cargo:rerun-if-env-changed=OPENSSL_INCLUDE_DIR
OPENSSL_INCLUDE_DIR = /usr/include/x86_64-linux-gnu
cargo:rerun-if-env-changed=X86_64_UNKNOWN_LINUX_GNU_OPENSSL_DIR
X86_64_UNKNOWN_LINUX_GNU_OPENSSL_DIR unset
cargo:rerun-if-env-changed=OPENSSL_DIR
OPENSSL_DIR = /usr
OPENSSL_LIBS unset
OPENSSL_STATIC unset
...
--- stderr
thread 'main' panicked at /home/omz/.cargo/registry/src/index.crates.io-6f17d22bba15001f/openssl-sys-0.9.104/build/main.rs:495:13:
OpenSSL libdir at `["/usr/lib64", "/usr/lib"]` does not contain the required files to either statically or dynamically link OpenSSL
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace
warning: build failed, waiting for other jobs to finish...
error: failed to compile `sea-orm-cli v1.1.3`, intermediate artifacts can be found at `/tmp/cargo-install29ps5e`.
To reuse those artifacts with a future compilation, set the environment variable `CARGO_TARGET_DIR` to that path.
I'm not sure why can't link OpenSSL. I tried these commands but didn't work...
sudo apt update
sudo apt install -y pkg-config libssl-dev
export OPENSSL_LIB_DIR=/usr/lib/x86_64-linux-gnu
export OPENSSL_INCLUDE_DIR=/usr/include/x86_64-linux-gnu
export OPENSSL_STATIC=false
cargo install sea-orm-cli --locked
Upvotes: 0
Views: 76
Reputation: 284
You do not have to set any environment variables, only install the dev package:
sudo apt update
sudo apt install -y pkg-config libssl-dev
Upvotes: 0