8 个版本
0.1.7 | 2022 年 11 月 11 日 |
---|---|
0.1.6 | 2021 年 6 月 16 日 |
0.1.5 | 2020 年 6 月 11 日 |
0.1.0 | 2020 年 5 月 31 日 |
#95 在 Cargo 插件
1,476 每月下载量
40KB
864 行
cargo-vcpkg
此命令 cargo vcpkg
将创建一个 vcpkg 树,并安装构建的 crate 和其依赖的 crate 中的 Cargo.toml
文件中指定的包。使用 vcpkg crate 的 crate 将能够自动找到库。
示例
[package.metadata.vcpkg]
git = "https://github.com/microsoft/vcpkg"
rev = "4c1db68"
dependencies = ["pkg1", "pkg2"]
$ cargo install cargo-vcpkg
$ cargo vcpkg build
Fetching vcpkg
Checkout rev/tag/branch 4c1db68
Compiling pkg1, pkg2
Finished in 1.93s
$ cargo build
[...]
按目标配置
也可以为每个目标安装不同集合的包,并覆盖要安装的 vcpkg 三联组。
[package.metadata.vcpkg]
git = "https://github.com/microsoft/vcpkg"
rev = "4c1db68"
dependencies = ["sdl2"]
[package.metadata.vcpkg.target]
x86_64-apple-darwin = { dependencies = ["sdl2", "sdl2-gfx" ] }
x86_64-unknown-linux-gnu = { dependencies = ["sdl2", "opencv"] }
x86_64-pc-windows-msvc = { triplet = "x64-windows-static", dependencies = ["sdl2", "zeromq"] }
开发依赖
设置 dev-dependencies
键允许构建此 crate 中二进制文件所需的库。如果 cargo vcpkg
在依赖于此 crate 的 crate 上运行,则仅安装 dependencies
键中的包。
[package.metadata.vcpkg]
git = "https://github.com/microsoft/vcpkg"
rev = "4c1db68"
dependencies = ["sdl2"]
dev-dependencies = ["sdl2-image"]
[package.metadata.vcpkg.target]
x86_64-apple-darwin = { dev-dependencies = ["sdl2-gfx" ] }
覆盖三联组
设置 overlay-triplets-path
键可以允许你在构建中使用自定义的 triplet 文件。此键的值应该是包含 triplet 文件的目录路径。这些文件将通过 vcpkg 构建的 --overlay-triplets
参数提供。
[package.metadata.vcpkg]
git = "https://github.com/microsoft/vcpkg"
rev = "4c1db68"
dependencies = ["sdl2"]
overlay-triplets-path = "support/custom-triplets"
[package.metadata.vcpkg.target]
x86_64-pc-windows-msvc = { triplet = "x64-windows-static-release" }
在这里,仓库应该包含一个名为 support/custom-triplets/x64-windows-static-release.cmake
的文件。
安装
通过运行以下命令进行安装
cargo install cargo-vcpkg
crates.io/vcpkg 需要较旧的 Rust 以兼容旧项目,而 cargo-vcpkg 希望跟踪 Cargo.toml 中的最新版本以获取最新功能,因此组件之间的存储库被分开。
许可证
请参阅 LICENSE-APACHE 和 LICENSE-MIT 以获取详细信息。
依赖关系
~4–13MB
~134K SLoC