主要是因?yàn)閎rew 安裝依賴(lài)包不成功狐赡,如下錯(cuò)誤:
第一種:
curl:(56)SSLRead()returnerror-36Error:An exception occurred within a child process:DownloadError:Failedtodownload resource"cmake"Download failed:https://github.com/Kitware/CMake/releases/download/v3.13.3/cmake-3.13.3.tar.gz
第二種:
curl:(52)Emptyreply from serverError:An exception occurred within a child process:DownloadError:Failed to download resource"nghttp2"Download failed:https://github.com/nghttp2/nghttp2/releases/download/v1.35.1/nghttp2-1.35.1.tar.xz
第三種:
curl:(35)Server aborted theSSLhandshakeError:An exception occurred within a child process:DownloadError:Failed to download resource"webp"Download failed:https://storage.googleapis.com/downloads.webmproject.org/releases/webp/libwebp-1.0.2.tar.gz
解決問(wèn)題:
mac brew 下載緩存目錄:
~/Library/Caches/Homebrew
或者:
~/Library/Caches/Homebrew/Cask
打開(kāi)后將看到“downloads”目錄筝尾,里面就是安裝依賴(lài)時(shí)下載的緩存文件,downloads文件夾同層級(jí)外面是downloads里面的文件替身,查看終端描述的是那個(gè)依賴(lài)包沒(méi)有下載成功,自己用其他工具下載下來(lái),一定要是相同版本,一般情況下直接復(fù)制終端提示的下載地址就可以了。
先下載好依賴(lài)包
查找文件名
進(jìn)入brew緩存目錄簇爆,查看哪個(gè)文件癞松,接近后綴的位置,是對(duì)應(yīng)要下載的依賴(lài)包名稱(chēng)入蛆,文件后綴為:.incomplete响蓉,大概是因?yàn)檫€沒(méi)有下完整所以顯示臨時(shí)文件后綴。
如:
6b825e455816e590eb425b836e57003f1b1894513fd97b45dac8c9ee5053cf08--nghttp2-1.35.1.tar.xz.incomplete
修改為原來(lái)隨機(jī)生成的那個(gè)文件名稱(chēng)哨毁,只是吧后綴刪除掉枫甲,使其成為正常可被解壓的文件名扼褪,注意不要隨便更改隨機(jī)文件名稱(chēng)想幻!
然后再次在終端運(yùn)行安裝依賴(lài)包命令,brew會(huì)識(shí)別到已經(jīng)下載完畢话浇,直接進(jìn)行安裝了脏毯。
Downloading https://github.com/nghttp2/nghttp2/releases/download/v1.35.1/nghAlready downloaded:/Users/xxx/Library/Caches/Homebrew/downloads/6b825e455816e590eb425b836e57003f1b1894513fd97b45dac8c9ee5053cf08--nghttp2-1.35.1.tar.xz
當(dāng)你找不到.incomplete文件時(shí),是因brew還沒(méi)開(kāi)始生成下載的臨時(shí)文件幔崖,那你就再次運(yùn)行一下就可以了食店。
但凡是也就有意外渣淤,不幸的你跟我一樣,發(fā)現(xiàn)還是報(bào)錯(cuò)了:
$ brew install dart
==> Installing dart from dart-lang/dart
==> Downloading https://storage.googleapis.com/dart-archive/channels/stable/release/2.4.1/sdk/dartsdk-macos
curl: (56) LibreSSL SSL_read: SSL_ERROR_SYSCALL, errno 54
Error: An exception occurred within a child process:
? DownloadError: Failed to download resource "dart"
Download failed: https://storage.googleapis.com/dart-archive/channels/stable/release/2.4.1/sdk/dartsdk-macos-x64-release.zip
那該怎么解決吉嫩?我們給命令加個(gè)?-v?打印命令的詳細(xì)日志看看:
注意到這條信息:
/usr/bin/curl -q --show-error --user-agent Homebrew/2.1.9-21-g625a780\ \(Macintosh\;\ Intel\ Mac\ OS\ X\ 10.14.2\)\ curl/7.54.0 --fail --location --remote-time --continue-at 0 --output /Users/shockerli/Library/Caches/Homebrew/downloads/4d2412a5d84521393e0e1ecdce0662569e13c2c47762093a760939fa9dd4a917--dartsdk-macos-x64-release.zip.incomplete https://storage.googleapis.com/dart-archive/channels/stable/release/2.4.1/sdk/dartsdk-macos-x64-release.zip
我們看到 Homebrew 下載 dart 的緩存地址為:
/Users/shockerli/Library/Caches/Homebrew/downloads/4d2412a5d84521393e0e1ecdce0662569e13c2c47762093a760939fa9dd4a917--dartsdk-macos-x64-release.zip.incomplete
XXX.incomplete?表示下載未完成价认,但這是 Homebrew 期望的下載文件路徑。