gpt4 book ai didi

rust - 如何修复我的 Cargo 文件中不匹配的依赖项以解决 native 库冲突?

转载 作者:行者123 更新时间:2023-11-29 08:02:27 25 4
gpt4 key购买 nike

我正在使用 Rocket 设置 Rust 服务器我正在尝试将它与 a JWT library 一起使用.他们使用不同版本的 *ring* crate,我在 cargo build 期间遇到错误:

error: multiple packages link to native library `ring-asm`, but a native library can be linked only once

package `ring v0.12.1`
... which is depended on by `jsonwebtoken v4.0.1`
... which is depended on by `auther v0.1.0 (file:///home/drpytho/x/downloadble/auther)`
links to native library `ring-asm`

package `ring v0.11.0`
... which is depended on by `cookie v0.9.2`
... which is depended on by `rocket v0.3.6`
... which is depended on by `rocket_codegen v0.3.6`
... which is depended on by `auther v0.1.0 (file:///home/drpytho/x/downloadble/auther)`
also links to native library `ring-asm`

我的 Cargo.toml

[package]
name = "auther"
version = "0.1.0"
authors = ["Name <Email@mail.se>"]

[dependencies]
rocket = "0.3.6"
rocket_codegen = "0.3.6"
jsonwebtoken = "4"
serde_derive = "1"
serde = "1"

我了解到您应该修复 Cargo 文件中不匹配的依赖项,但我不知道该怎么做。

最佳答案

您必须通过不依赖于链接到 native 库的不同版本的 crate 来解决此问题。

没有更新版本的 rocket 依赖于 cookie0.10 版本,而 ring 依赖于 ring 0.12,因此您需要将 jsonwebtoken 降级为 2.0.3

您可以通过检查 crates.io 页面中有问题的 crate (例如 jsonwebtoken ),回溯旧版本并查看它需要什么依赖项来解决这个问题。

关于rust - 如何修复我的 Cargo 文件中不匹配的依赖项以解决 native 库冲突?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49385326/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com