🪢

[Homebrew] brew updateができない場合

2023/03/06に公開

原因: CommandLineTools for Xcodeの未install

Homebrewを使うためには同時にCommand line tools for Xcodeが必要になるそうです。しかし、今回はこれがinstallできなかったため、XCodeをdownloadすることで解決しています。

https://qiita.com/DaikiSuyama/items/5a2a96859b44595cba76
https://apps.apple.com/jp/app/xcode/id497799835?mt=12

Error内容から解決まで

1. flutterのbrew install

ここから、全く動かなくなりました。おそらく、brew updateがうまく行っていないのではと考えました。

% brew install --cask flutter
Running `brew update --auto-update`...

2. brew doctorで問題確認

% brew doctor
Please note that these warnings are just used to help the Homebrew maintainers
with debugging if you file an issue. If everything you use Homebrew for is
working fine: please don't worry or file an issue; just ignore this. Thanks!

Warning: No developer tools installed.
Install the Command Line Tools:
  xcode-select --install

xcode-select --installの実行が必要と言われています。homebrew xcodeで調べてみると、以下のサイトにたどりつきました。

https://qiita.com/DaikiSuyama/items/5a2a96859b44595cba76

homebrewの使用にはこのCommandLineTools for Xcodeが必要そうです。以下のcommandを実行しinstallします。

% xcode-select --install
xcode-select: note: install requested for command line developer tools

これもinstallできないと言われてしまいました。しかし、XCodeをdownloadするとこのCommandLineTools for Xcodeも自動的にdownloadされるということなので、XCodeのdownloadをしていきます。

3. XCodeのdownload

以下のURLからdownloadします。
https://apps.apple.com/jp/app/xcode/id497799835?mt=12

続いて、以下のコマンドでinstallを完了させます。

% sudo xcode-select --switch /Applications/Xcode.app/Contents/Developer
Password:
% sudo xcodebuild -runFirstLaunch
...
By typing 'agree' you are agreeing to the terms of the software license agreements. Type 'print' to print them or anything else to cancel, [agree, print, cancel] agree

You can view the license agreements in Xcode's About Box, or at /Applications/Xcode.app/Contents/Resources/en.lproj/License.rtf

Install Started
1%.........20.........40.........60.........80......Install Succeeded

4. brew updateで動作確認

brew updateでかなり時間はかかりましたが、実行できました。
時間がかかったのは、しばらくbrew updateを実行しておらず、処理が重くなったためなのではと考えられます。

% brew update
==> Downloading https://formulae.brew.sh/api/formula.jws.json
######################################################################## 100.0%
==> Downloading https://formulae.brew.sh/api/cask.jws.json
######################################################################## 100.0%
Updated 2 taps (homebrew/cask-versions and homebrew/services).
==> New Casks
dolphin-beta                        elephas-beta                        gimp-dev                            openra-playtest                     vmware-fusion12                     whatsapp-alpha
element-nightly                     folding-at-home-beta                monal-beta                          qbittorrent-lt20                    wezterm-nightly
==> Outdated Formulae
ca-certificates            git                        libcbor                    mysql@5.7                  pcre2                      pyenv                      tree                       zlib
gettext                    icu4c                      libfido2                   openssl@1.1                protobuf                   pyenv-virtualenv           xz                         zstd

You have 16 outdated formulae installed.
You can upgrade them with brew upgrade
or list them with brew outdated.

5. flutterのbrew install

以下のようにinstallが完了しました。

% brew install --cask flutter
==> Downloading https://storage.googleapis.com/flutter_infra_release/releases/stable/macos/flutter_macos_arm64_3.7.6-stable.zip
######################################################################## 100.0%
==> Installing Cask flutter
==> Downloading https://formulae.brew.sh/api/formula.jws.json
#=#=#
==> Linking Binary 'dart' to '/opt/homebrew/bin/dart'
==> Linking Binary 'flutter' to '/opt/homebrew/bin/flutter'
🍺  flutter was successfully installed!

Discussion