首页 > 其他分享 >rust的musl toolchain

rust的musl toolchain

时间:2023-12-01 12:12:06浏览次数:37  
标签:toolchain rustup -- musl linux rust

rust项目常常会使用musl作为编译target,这个时候就会使用musl的工具链。musl toolchain安装在$HOME/.rustup/toolchain下面。通常可以用rustup 安装,比如:

rustup install stable-unknown-linux-musl

也可以使用rust官方提供的脚本:

curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh -s -- -y --default-toolchain stable-unknown-linux-musl

如果default使用musl作为toolchain,通常会报一下符号找不到的错误,甚至cargo命令都无法启动。可以使用alpine作为编译环境。alpine对musl toolchain的支持较好。

musl libc的源码在https://git.musl-libc.org/cgit/musl/。

如果要使用musl静态链接,可以按照如下命令:

 export RUSTFLAGS='-C target-feature=+crt-static -C link-self-contained=yes'
 cargo build --release --target aarch64-unknown-linux-musl

 

标签:toolchain,rustup,--,musl,linux,rust
From: https://www.cnblogs.com/banshanjushi/p/17869421.html

相关文章

  • Rust std fs 比 Python 慢!真的吗!?
    作者:XuanwoDatabendLabs成员,数据库研发工程师https://github.com/xuanwo我即将分享一个冗长的故事,从OpenDAL的op.read()开始,以一个意想不到的转折结束。这个过程对我来说非常有启发性,我希望你也能感受到。我会尽力重现这个经历,并附上我一路学到的教训。让我们开始吧!所......
  • Rust std fs 比 Python 慢!真的吗!?
    作者:XuanwoDatabendLabs成员,数据库研发工程师https://github.com/xuanwo我即将分享一个冗长的故事,从OpenDAL的op.read()开始,以一个意想不到的转折结束。这个过程对我来说非常有启发性,我希望你也能感受到。我会尽力重现这个经历,并附上我一路学到的教训。让我们开始吧!......
  • 30_rust_模式匹配
    模式匹配模式:是rust中的一种特殊语法,用于匹配复杂和简单类型的结构。将模式与匹配表达式和其他结构结合使用,可更好控制程序控制流。模式由以下元素(及组合)组成:字面值解构的数组、enum、struct和tuple变量通配符占位符模式匹配的场景match的Arm(分支)格式:matchVALUE{......
  • Rust Tauri系列: 项目创建
    创建Rust-Tauri##创建rustTauri项目pnpmcreatetauri-app->项目名称test-app->选择TypeScript/JavaScript(pnpm,yarn,npm,bun)->选择包管理工具(熟悉那个就用那个)->选择vue(熟悉那个就用那个)->选择TypeScript或者js#运行启动cdtest-apppnpmins......
  • rust 运行windows cmd命令
    usestd::process::Command;fncallcmd(cmdstr:&str){Command::new("cmd").arg("/S").arg("/c").arg(cmdstr).output().expect("-1&......
  • Xcode 15 and iOS 17 - Error: DT_TOOLCHAIN_DIR cannot be used to evaluate LIBRARY
    热烈欢迎,请直接点击!!!进入博主AppStore主页,下载使用各个作品!!!注:博主将坚持每月上线一个新app!!Podfile文件添加如下内容后,重新podinstall:post_installdo|installer|#fixxcode15DT_TOOLCHAIN_DIR-removeafterfixoficially-https://github.com/CocoaPods/CocoaPod......
  • Spin 基于rust 开发的开源运行基于webassembly serverless 工具
    spin是基于rust开发的,可以用来开发以及运行基于webassemblyserverless服务的工具包含的特性提供了周边扩展 默认wasm只提供了基本类型的支持,wasm提供了不少扩展可以方便的支持不同语言的调用(比如网络,数据库访问)提供了快速应该开发的cli提供了服务部署的能力 包含了本......
  • 30. 干货系列从零用Rust编写正反向代理,HTTP的组装之旅(中间件)
    wmproxywmproxy已用Rust实现http/https代理,socks5代理,反向代理,静态文件服务器,四层TCP/UDP转发,七层负载均衡,内网穿透,后续将实现websocket代理等,会将实现过程分享出来,感兴趣的可以一起造个轮子项目地址国内:https://gitee.com/tickbh/wmproxygithub:https://github.com/......
  • Rust错误案例:error[E0716]: temporary value dropped while borrowed
    原因出现error[E0716]:temporaryvaluedroppedwhileborrowed的情况往往是因为错误地将引用绑定在了临时变量上,在每行代码结尾的分号;处,临时变量释放导致引用的错误绑定。由于临时变量多出现于函数编程中,因此该问题多发于连续调用函数。简短案例//entry:PathBufletfold......
  • rust程序设计(6)枚举与模式匹配
    rust中的枚举有什么用?枚举可以嵌入类型的好处是什么你可以在同一个枚举中既有单个值,也有元组或结构体。枚举的每个变体可以拥有不同数量和类型的关联数据。这增加了类型的灵活性和表达力,使你能够更精确地建模你的数据。我知道rust可以为枚举创建方法,那在哪种场景下枚举会比......