Cargo拉取依赖缓慢的问题

Cargo拉取依赖缓慢的问题

更换镜像源

鉴于国内访问crates-io过于缓慢,所以我们可以设置国内的镜像源或者配置代理来提升拉取三方crate的速度
如果是第一次修改,则是新建文件 ~/.cargo/config.toml

[source.crates-io]
registry="https://github.com/rust-lang/crates.io-index"
#指定镜像
#如:tuna、sjtu、ustc,或者 rustcc
replace-with='tuna'

#注:以下源配置一个即可,无需全部

#中国科学技术大学
[source.ustc]
registry = "git://mirrors.ustc.edu.cn/crates.io-index"
# 如果所处的环境中不允许使用 git 协议,可以把上述地址改为:
# registry = "https://mirrors.ustc.edu.cn/crates.io-index"

#上海交通大学
[source.sjtu]
registry="https://mirrors.sjtug.sjtu.edu.cn/git/crates.io-index/"

#清华大学
[source.tuna]
registry="https://mirrors.tuna.tsinghua.edu.cn/git/crates.io-index.git"

#rustcc社区
[source.rustcc]
registry="https://code.aliyun.com/rustcc/crates.io-index.git"

注意

若使用 crates 源时出现 Couldn't resolve host name (Could not resolve host: crates) 错误(见 https://github.com/ustclug/discussions/issues/294),可能需要在运行 cargo 的时候加入环境变量 CARGO_HTTP_MULTIPLEXING=false

Windows 用户在使用 crates 源时可能会出现 next InitializeSecurityContext failed: Unknown error 错误(见 https://github.com/ustclug/discussions/issues/339https://github.com/rust-lang/cargo/issues/7096) 。一个 workaround 是在运行 cargo 的时候加入环境变量 CARGO_HTTP_CHECK_REVOKE=false,或者在配置中增加:

[http]
check-revoke = false

除此之外cargo search是无法使用镜像的。

设置代理

同样是针对~/.cargo/config.toml文件调整新增http和https代码块新增代理信息

[http]
# host:port
proxy = "127.0.0.1:8001"
# 超时时间
timeout = 30

[https]
proxy = "127.0.0.1:8001"
timeout = 30
# rust 

评论

Your browser is out-of-date!

Update your browser to view this website correctly. Update my browser now

×