#llvm #shared #proxy #calls #own #dynamically #version

sys build aya-rustc-llvm-proxy

动态代理LLVM调用到Rust自有的共享库

10个版本 (6个重大更新)

0.9.3 2024年8月12日
0.9.2 2024年3月21日
0.9.1 2024年2月18日
0.9.0 2023年9月19日
0.3.0 2021年12月17日

#185 in 构建工具

Download history 638/week @ 2024-05-02 680/week @ 2024-05-09 459/week @ 2024-05-16 556/week @ 2024-05-23 660/week @ 2024-05-30 914/week @ 2024-06-06 771/week @ 2024-06-13 605/week @ 2024-06-20 639/week @ 2024-06-27 741/week @ 2024-07-04 786/week @ 2024-07-11 819/week @ 2024-07-18 919/week @ 2024-07-25 917/week @ 2024-08-01 1275/week @ 2024-08-08 1285/week @ 2024-08-15

每月下载量 4,510
bpf-linker中使用

MIT许可证

28KB
504

Aya Rustc LLVM Proxy

Build Current Version Docs

这是rustc-llvm-proxy crate的分支。

动态代理LLVM调用到Rust自有的共享库!🎉

使用场景

通常情况下,这个crate并不需要,除非是一些特殊情况

  • 您的crate是一些构建过程辅助工具,利用LLVM(例如 bpf-linker),
  • 您的crate需要与Rust LLVM版本保持同步(再次以bpf-linker为例),
  • 您可能不想依赖于宿主LLVM库(就像bpf-linker一样)。

用法

首先,您需要确保没有其他crate将您的二进制文件链接到系统LLVM库。如果您使用llvm-sys,可以使用一个特殊特性来实现这一点

[dependencies.llvm-sys]
version = "60"
features = ["no-llvm-linking", "disable-alltargets-init"]

然后,您只需要将crate包含到您的项目中

[dependencies]
aya-rustc-llvm-proxy = "0.9"
extern crate aya_rustc_llvm_proxy;

依赖项

~0.4–5.5MB
~17K SLoC