Ubuntu下安装sea-orm-cli失败:openssl-sys链接问题求助
解决sea-orm-cli安装时OpenSSL链接失败的问题
问题背景
安装sea-orm-cli v1.1.3时,openssl-sys v0.9.104构建失败,报错提示无法找到可链接的OpenSSL库文件,即使已执行apt install libssl-dev并手动设置OPENSSL_LIB_DIR等环境变量仍未解决。
核心报错信息:
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
已尝试的操作:
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
解决方案
1. 修复OpenSSL开发库安装
先清理可能损坏的安装包,重新安装确保库文件完整:
sudo apt update && sudo apt purge -y libssl-dev sudo apt autoremove -y sudo apt install -y pkg-config libssl-dev
2. 正确配置pkg-config路径
手动指定pkg-config的搜索路径,帮助openssl-sys识别库配置文件:
export OPENSSL_LIB_DIR=/usr/lib/x86_64-linux-gnu export OPENSSL_INCLUDE_DIR=/usr/include/x86_64-linux-gnu export PKG_CONFIG_PATH=/usr/lib/x86_64-linux-gnu/pkgconfig cargo install sea-orm-cli --locked
3. 使用vendored版OpenSSL(绕过系统库)
如果系统OpenSSL库存在兼容性问题,强制编译openssl-sys自带的OpenSSL版本:
cargo install sea-orm-cli --locked --features openssl/vendored
内容的提问来源于stack exchange,提问作者OMZ
相关产品推荐
相关产品推荐

