使用國内的鏡像源更快速的安裝rust和卸載

字號+ 編輯: Snake 修訂: 种花家 來源: 原创 2024-07-03 我要說兩句(2)

使用國内的鏡像源安裝和更新, 簡單的兩條命令搞定。

curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh

上邊的很熟悉了, rust的安裝命令, 但國内連接起來非常不方便, 有的時候根本沒有辦法下載到任何東西。

Mac/Linux系統的國内鏡像配置

改爲以下命令, 輸出到test.sh

curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs > test.sh

進入test.sh當中, 把RUSTUP_UPDATE_ROOT的值改成國内的鏡像地址:

# If RUSTUP_UPDATE_ROOT is unset or empty, default it.
RUSTUP_UPDATE_ROOT="https://mirrors.ustc.edu.cn/rust-static/rustup"

保存, 退出編輯, 接下來運行下面的命令。

export RUSTUP_DIST_SERVER="https://mirrors.ustc.edu.cn/rust-static"
export RUSTUP_UPDATE_ROOT="https://mirrors.ustc.edu.cn/rust-static/rustup"

開始安裝

bash ./test.sh

更新rust

rustup self update && rustup update

Windows系統的國内鏡像配置

找到powershell, 不需要管理員運行權限,粘貼複制運行以下兩條命令,使用中科大的鏡像

$ENV:RUSTUP_DIST_SERVER='https://mirrors.ustc.edu.cn/rust-static'
$ENV:RUSTUP_UPDATE_ROOT='https://mirrors.ustc.edu.cn/rust-static/rustup'

同樣按照上文的開始安裝步驟,安裝rust

卸載rust的命令

rustup self uninstall

cargo crates的國内鏡像配置文档

部分的在機房裡測試是搞不通的,所以小編現在沒辦法在機房用測試機編譯,在本地用自己的弱雞x86機器搞一個docker環境進行編譯,編譯好了傳到服務器上來。

各地區機房的運營商封禁配置略有不同,我測試拉垮的節點,到你那未必,可以自行嘗試。

說用蘋果arm機可以交叉編譯x86程序hello world傳到intel服務器上跑生産的,真心請這種知乎類沙壁別瞎叭叭了。

中科大

tee $HOME/.cargo/config.toml <<-'EOF'
[source.crates-io]
registry = "https://github.com/rust-lang/crates.io-index"
replace-with = 'ustc'
[source.ustc]
registry = "git://mirrors.ustc.edu.cn/crates.io-index"
EOF

阿裡雲

tee $HOME/.cargo/config.toml <<-'EOF'
[source.crates-io]
replace-with = "rustcc"
[source.rustcc]
registry = "https://code.aliyun.com/rustcc/crates.io-index"
EOF

下面的就不多餘聲明改哪個文档了,都在~/.cargo/config.toml這裡改,懂的都懂

rsproxy的

[source.crates-io]
replace-with = 'rsproxy-sparse'
[source.rsproxy]
registry = "https://rsproxy.cn/crates.io-index"
[source.rsproxy-sparse]
registry = "sparse+https://rsproxy.cn/index/"
[registries.rsproxy]
index = "https://rsproxy.cn/crates.io-index"
[net]
git-fetch-with-cli = true

清華大學的(2024年7月測試拉垮了)

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

中國科學技術大學(2024年7月測試拉垮了)

[source.ustc]
registry = "git://mirrors.ustc.edu.cn/crates.io-index"

上海交通大學

[source.sjtu]
registry = "https://mirrors.sjtug.sjtu.edu.cn/git/crates.io-index"

rustcc社區(2024年7月測試拉跨了)

[source.rustcc]
registry = "git://crates.rustcc.cn/crates.io-index"

新版的rust會提示使用config.toml代替config, 那麽把$HOME/.cargo/config更名爲$HOME/.cargo/config.toml即可

蘋果M1~M3 arm架構編譯不了rust的tokio周邊庫

這個坑很早以前就有人發現, 並提出來issue, 官方其實管不起的。誰叫蘋果搞這個事情呢。爲了解決類似的問題,蘋果拿出的解決方案是rosetta2,剩下的由開發者自己想象。如果你是用終耑執行rust編譯指令, 按照如下去做:

先卸載你mac電腦裡的rust。

rustup self uninstall

卸載干淨之後, 退出終耑, 在訪達->應用程序裡面找到終耑.app右鍵點擊, 詳細簡介->使用rosetta打開。

這個時候, 是模擬到x86的平台上了, 進終耑執行rust安裝指令

curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh

會發現默認推薦的是安裝x86_64版本的rust, 這就意味著你再想在M系列芯片上跑arm的rust很有可能還得在終耑裡折騰一回(除非docker之類的虛擬機硬上)。 小編親測可以跑通。

閲完此文,您的感想如何?
  • 有用

    334

  • 沒用

    2

  • 開心

    28

  • 憤怒

    7

  • 可憐

    16

1.如文章侵犯了您的版權,請發郵件通知本站,該文章將在24小時内刪除;
2.本站標注原創的文章,轉發時煩請注明來源;
3.交流群: 2702237 13835667

相關課文
  • 在rust/axum框架中操作redis

  • rust編譯新的wasm項目操作流程(原文: 編譯 Rust 爲 WebAssembly)

  • rust視圖模板庫askama的使用

  • axum框架當中獲取請求header, 和獲取header指定字段的方法

我要說說
網上賓友點評
1 樓 IP 222.128.***.32 的嘉賓 说道 : 很久前
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs > rust.sh

2 樓 IP 111.192.***.157 的嘉賓 说道 : 半年前
学这个东西~ 累啊