zenoh zenoh-plugin-remote-api 插件构建支持musl libc

就在最近的zenoh 插件下载中提供了zenoh-plugin-remote-api,但是不太好的是缺少对于musl libc 的支持,实际上是可以支持的,只是构建上缺少特性

解决方法

就是自己构建,同时注意对于musl libc 的支持需要使用静态链接模式,就是构建的时候添加RUSTFLAGS="-Ctarget-feature=-crt-static"

参考构建

我使用了rust:1.75.0-alpine3.19 docker 镜像,对于


git clone https://github.com/rongfengliang/zenoh-ts.git
docker run -it -v $PWD/:/opt/zenoh rust:1.75.0-alpine3.19 sh
apk add --no-cache musl-dev
cd /opt/zenoh/zenoh-ts
RUSTFLAGS="-Ctarget-feature=-crt-static" cargo build --release --bins --lib  --target x86_64-unknown-linux-musl

说明

因为zenoh 项目基本都使用了跨平台构建,我参考其他项目的添加了支持,(主要是.cargo/config.toml 中添加对于特定target 的支持)

配置如下

[target.x86_64-unknown-linux-musl]
rustflags = "-Ctarget-feature=-crt-static"

[target.aarch64-unknown-linux-musl]
rustflags = "-Ctarget-feature=-crt-static"

参考资料

https://download.eclipse.org/zenoh/

https://stackoverflow.com/questions/57655697/cross-compile-and-link-a-dynamic-library-cdylib-on-macos-for-linux-with-cargo

posted on   荣锋亮  阅读(4)  评论(0编辑  收藏  举报

相关博文:
阅读排行:
· 全程不用写代码,我用AI程序员写了一个飞机大战
· DeepSeek 开源周回顾「GitHub 热点速览」
· 记一次.NET内存居高不下排查解决与启示
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· .NET10 - 预览版1新功能体验(一)
历史上的今天:
2024-01-11 dremio 反射刷新时间的一些简单说明
2024-01-11 dremio+nessie+dbt+ cube.js 实现简单数据服务
2023-01-11 dremio FragmentStarter 简单说明
2023-01-11 dremio PhysicalPlanReader 简单说明
2019-01-11 sqler sql 转rest api 的docker 镜像构建(续)使用源码编译
2019-01-11 sqler sql 转rest api javascript 试用
2019-01-11 sqler sql 转rest api redis 接口使用

导航

< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5
点击右上角即可分享
微信分享提示