首页 > 解决方案 > 离线时如何使用 cargo 安装?

问题描述

我想在我的工作区使用 bat 和 lsd。

但为了安全起见,我公司的 Centos 6 Linux 服务器已与 Internet 断开连接。

但我们可以这样做,即安装一些有助于工作的东西。

> cargo install --locked bat
    Updating crates.io index
warning: spurious network error (2 tries remaining): failed to resolve address for github.com: Temporary failure in name resolution; class=Net (12)
warning: spurious network error (1 tries remaining): failed to resolve address for github.com: Temporary failure in name resolution; class=Net (12)
error: failed to fetch `https://github.com/rust-lang/crates.io-index`

Caused by:
  failed to resolve address for github.com: Temporary failure in name resolution; class=Net (12)

我怎样才能做到这一点?

标签: installationrustrust-cargo

解决方案


下面的说明对于任何其他板条箱来说并没有太大的不同。

  1. 下载存储库:

    git clone https://github.com/sharkdp/bat.git --depth 1 --branch v0.18.1
    cd bat
    

    这只是获取crate的0.18.1版本。bat

  2. 用于cargo vendor在本地机器上下载和捆绑包的依赖项:

    cargo vendor
    
    • 如果与另一台机器不同(即) ,则可以选择指定工具链cargo +<TOOLCHAIN> vendor
    • 如果与另一台机器不同(即) ,则可以选择指定目标cargo vendor --target <TARGET>

    请务必按照最后的说明创建/添加到.cargo/config.toml文件。您还可以检查目录中现在的所有依赖vendor/项。

  3. 压缩并将整个当前目录传输到另一台机器。

  4. 用于cargo install安装它:

    cargo install --offline --path <PATH>
    
    • 用于--path告诉它要安装的目录
    • 用于--offline防止它以任何理由访问网络

推荐阅读