ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

解决rust编译目标为musl时openssl报错

2022-04-11 01:04:18  阅读:513  来源: 互联网

标签:musl -- builder openssl 编译 报错 rust


同步:https://zhufn.fun/archives/rust-musl-ssl/
为了节省容器启动时间,准备把rust写的api编译好后扔进docker里,于是编译到target:x86_64-unknown-linux-musl
然后openssl炸了,不认libssl-dev了,查了下要重新编译。。。
但是,我们发现了一个神奇的docker镜象https://github.com/emk/rust-musl-builder,它已经配好了openssl的musl环境以及diesel, sqlx
于是只要这样:

alias rust-musl-builder='docker run --rm -it -v "$(pwd)":/home/rust/src ekidd/rust-musl-builder'
rust-musl-builder cargo build --release

就可以了
(不过好像也可以把openssl换成rustls来解决)

However, rustls now works well with most of the Rust ecosystem, including reqwest, tokio, tokio-postgres, sqlx and many others. The only major project which still requires libpq and OpenSSL is Diesel. If you don't need diesel or libpq:

See if you can switch away from OpenSSL, typically by using features in Cargo.toml to ask your dependencies to use rustls instead.
If you don't need OpenSSL, try cross build --target=x86_64-unknown-linux-musl --release to cross-compile your binaries for libmusl. This supports many more platforms, with less hassle!

标签:musl,--,builder,openssl,编译,报错,rust
来源: https://www.cnblogs.com/buringstraw/p/16128325.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有