1. HOME»
  2. プログラミング・Web»
  3. パッケージマネージャー»
  4. Homebrewのインストール方法と詳しい使い方

Homebrewのインストール方法と詳しい使い方

Homebrewは、パッケージ管理システム(パッケージマネージャ)のひとつで、macOSまたはLinuxで動かすことができます。

今回はmacOSでのHomebrewの使い方を、くわしく紹介していきます。

(この記事は、もっと分かりやすくなるよう、2022年8月31日に、内容を大きく編集しています)

目次
  1. Homebrewとは
  2. Homebrewのインストール
  3. Homebrewで使われる用語について
  4. 今回紹介する、Homebrewのコマンド一覧
  5. Homebrewのバージョンを確認(brew –version)
  6. Homebrewの問題をチェック(brew doctor)
  7. Homebrewとパッケージのアップデート
  8. パッケージのインストール(brew install formula|cask)
  9. パッケージを探す(brew search text|regex)
  10. インストールされているパッケージを一覧表示(brew list)
  11. パッケージのアンインストール(brew uninstall formula|cask)
  12. 依存関係でインストールされたformulaをアンインストール(brew autoremove)
  13. アップグレードしたくないformulaをピンで固定&解除
  14. Homebrew全体の情報を表示(brew info)
  15. パッケージの情報を表示(brew info formula|cask)
  16. Homebrewのコマンド一覧を表示(brew commands)
  17. コマンドの使い方を見る(brew help コマンド名)
  18. Homebrewや、パッケージのページを表示する
  19. Homebrewのマニュアルを表示(man brew)
  20. Brewfileによるパッケージの管理
  21. Homebrewのアンインストール
  22. 表示されたWarning
  23. まとめ

Homebrewとは

Homebrewとは、macOSまたはLinux上で動く、パッケージ管理システムです。
分かりやすく言うと、Macのターミナルから簡単にソフトウェアをインストールできるようにするものです。

Homebrew公式ページ:https://brew.sh/index_ja.html

Homebrewのインストール

では、Homebrewインストールしてみましょう。
インストールはとても簡単です。先ほど紹介したHomebrewのページ(https://brew.sh/index_ja.html)から、インストール用のスクリプトをコピーし、ターミナルに貼り付けるだけでインストールすることができます。

赤枠で囲んだ部分をコピーしてターミナルに貼り付けます。

$ /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"

もしバージョンが表示されなければ、パスを通す必要があります。
Appleシリコン搭載のMacを使っている場合は、以下のコマンドを実行してください。

$ echo 'eval "$(/opt/homebrew/bin/brew shellenv)"' >> /Users/r/.zprofile
$ eval "$(/opt/homebrew/bin/brew shellenv)"

私の環境はMac M1を使っていますが、上記の方法で使うことができました。

もし、もっと詳しくインストール方法が知りたい場合は、こちらをご覧ください。

Homebrewで使われる用語について

Homebrewでは、ちょっと特別な用語が出てきます。
この記事では、次のふたつの用語を使いますので、覚えておいてください。

用語意味
formulaパッケージの定義
caskmacOSネイティブアプリのためのパッケージの定義

formulaは、パッケージ定義のことです。
パッケージのホームページやダウンロード場所のURL、ライセンス、依存関係、インストールのスクリプトなどが、Rubyで書かれています。

caskも同様にパッケージ定義のことですが、こちらはmacOSのネイティブアプリのパッケージ定義です。

……ただ、もうちょっとゆるく考えて、定義だけではなく、そのパッケージ自体のことも含めた意味で使われているように思います。

また、formulaやcaskの複数形は、formulae、casks、となりますが、日本語と混ぜると分かりにくいので、この記事では、formula、cask、で統一します。

今回紹介する、Homebrewのコマンド一覧

今回紹介するコマンドを一覧にしましたので、参考にしてください。

コマンド (省略形)機能
$ brew --version
($ brew -v)
Homebrewのバージョンを表示
$ brew doctorHomebrewの問題をチェック
$ brew update最も新しいバージョンのHomebrewとformulaを取得
$ brew outdated更新が利用可能なパッケージを一覧表示
$ brew upgrade古いcaskや、固定されていないformulaを、最初にインストールされたときと同じオプションでアップグレード
$ brew install パッケージ名パッケージをインストール
$ brew search
($ brew -S)
Homebrewのパッケージを一覧表示
$ brew search キーワード
($ brew -S キーワード)
キーワードや正規表現を使って、パッケージを検索
$ brew list
($ brew ls)
インストールされているパッケージを表示
$ brew uninstall パッケージ名パッケージをアンインストールbrew removebrew rmも同じ)
$ brew autoremove別のformulaとの依存関係でインストールされた、不要なformulaをアンインストール
$ brew pin formulaインストール済みのformulaを指定することで、brew upgradeアップグレードされないように固定する
$ brew unpin formulabrew pinによる固定を解除
$ brew infoHomebrew全体の情報を表示
$ brew info パッケージ名パッケージについての情報を表示
$ brew commandsコマンドを一覧表示
$ brew help コマンドコマンドの使い方を表示
$ brew homeHomebrewや、そのパッケージのページを表示
$ man brewHomebrewについてのマニュアルを表示
$ brew bundle dumpBrewfileの作成
$ brew bundleBrewfileに書かれたパッケージをインストール
$ brew bundle cleanupBrewfileから消したパッケージを削除

Homebrewのバージョンを確認(brew –version)

Homebrewインストールが終わったら、以下のコマンドを実行して、ちゃんとインストールされているか確認してみましょう。

次のコマンドを実行して、バージョンが表示されれば、Homebrewインストールされています。

$ brew --version
Homebrew 3.5.10

また、「brew --version」は、「brew -v」というふうに省略することもできます。

$ brew -v
Homebrew 3.5.10

うまくいかない場合は、ターミナルを再起動してみてください。

Homebrewの問題をチェック(brew doctor)

つづいて、Homebrewの問題をチェックしてみましょう。
実行するのは、brew doctorというコマンドです。

$ brew doctor
Your system is ready to brew.

上記のようにYour system is ready to brew.と表示された場合、Homebrewは問題ありません。
もしもこのように表示されなかった場合は、記事の後ろに私がbrew doctorで表示された警告を載せますので、参考にしてください。

Homebrewとパッケージのアップデート

チェックで問題がなければ、つづいてHomebrewとパッケージのアップデートの方法を覚えましょう。

brew updateは、最も新しいバージョンのHomebrewとパッケージの定義をGitHubから取得します。

$ brew update

brew outdatedで、古くなったパッケージがどれなのかを一覧表示することができます。

$ brew outdated

brew upgradeは、古いcaskや、固定されていないformulaを、最初にインストールされたときと同じオプションでアップグレードします。

$ brew upgrade

なにか作業をはじめようとターミナルを開いときに、とりあえず、brew updatebrew upgradeの順番で実行しておけば、Homebrewインストールしたすべてのパッケージが最新になります。

$ brew update
$ brew upgrade

brew pinで固定されている場合は、アップグレードされません)

パッケージのインストール(brew install formula|cask)

パッケージをインストールするには、brew installの後ろに、パッケージ名を入力します。
たとえば、Vimをインストールしたいときは、次のようにします。

$ brew install vim

これで、Vimをインストールすることができます。

パッケージを探す(brew search text|regex)

インストールできるパッケージは、「brew search」の後ろにテキストや正規表現を入力することで、探すことができます。

たとえば、VimってHomebrewインストールできるかな、と思ったときは、次のようにします。

$ brew search vim
==> Formulae
avimetaedit     neovim-remote   vimpager        viu             zim
macvim          pacvim          vimpc           vit             nim
neovim          pyvim           zsh-vi-mode     vip
neovim-qt       vim             vifm            vis

vimの文字が含まれたパッケージや、vimによく似た名前のパッケージが一覧表示されます。
インストール済みのパッケージには✔がつきます)

また、「brew search」は「brew -S」に省略することができます。

$ brew -S vim
==> Formulae
avimetaedit     neovim-remote   vimpager        viu             zim
macvim          pacvim          vimpc           vit             nim
neovim          pyvim           zsh-vi-mode     vip
neovim-qt       vim             vifm            vis

インストールされているパッケージを一覧表示(brew list)

Homebrewインストールしたパッケージは、「brew list」で一覧表示できます。

$ brew list
==> Formulae
berkeley-db	libyaml		openssl@1.1	ruby
ca-certificates	lua		perl		sqlite
gdbm		mpdecimal	python@3.10	vim
gettext		ncurses		readline	xz

もしかすると、ここにインストールした覚えのないパッケージ名が表示されているかもしれません。

それはおそらく、他のパッケージを使うのに必要なパッケージで、そのパッケージを入れたときにインストールされたものです。

また、「brew ls」というふうに省略することもできます。

$ brew ls
==> Formulae
berkeley-db	libyaml		openssl@1.1	ruby
ca-certificates	lua		perl		sqlite
gdbm		mpdecimal	python@3.10	vim
gettext		ncurses		readline	xz

パッケージのアンインストール(brew uninstall formula|cask)

使わなくなったパッケージは、「brew uninstall パッケージ名」でアンインストールできます。
たとえば、Vimをアンインストールするには、次のようにします。

$ brew uninstall vim

これで、Vimをアンインストールすることができました。

さて、ここまでの内容だけでも、Homebrewでの便利なパッケージ管理ができます。
しかし、Homebrewにはまだまだたくさんの機能があります。

ここからは、もうちょっと細かい機能を見ていきましょう。

依存関係でインストールされたformulaをアンインストール(brew autoremove)

さきほど、Vimをアンインストールしました。
しかし、「brew list」で確認すると、インストールした覚えのない、たくさんのformulaが残っています

$ brew list
==> Formulae
berkeley-db	gettext		mpdecimal	perl		ruby
ca-certificates	libyaml		ncurses		python@3.10	sqlite
gdbm		lua		openssl@1.1	readline	xz

これは、Vimをインストールしたとき、依存関係にあるformulaがインストールされたためです。

もし、これらを削除したい場合は、「brew autoremove」を使います。

$ brew autoremove

これで、不要なformulaを削除することができます。
(Warningが出た場合は、その指示に従ってください)

アップグレードしたくないformulaをピンで固定&解除

使っているformulaの中には、今のバージョンのままアップグレードしたくないものがあるかもしれません。
しかし、brew upgradeではすべてのformulaがアップグレードしてしまいます。

そんなときは、そのformulaをピンで固定しておきましょう。
ピンで固定するには、「brew pin <formula>」を実行します。

$ brew pin vim

ピンで固定したformulaの一覧を表示するには、「brew list」に「--pinned」オプションをつけて実行します。

$ brew list --pinned
vim

また、ピンで固定したものを解除するには、次のコマンドを使います。

$ brew unpin vim

Homebrew全体の情報を表示(brew info)

brew info」を使うと、Homebrewインストールしたパッケージの全体の情報が表示されます。

$ brew info
102 kegs, 66,909 files, 1.5GB

パッケージの情報を表示(brew info formula|cask)

brew info パッケージ名」を使うと、そのパッケージの情報を表示することもできます。

$ brew info vim
==> vim: stable 9.0.0300 (bottled), HEAD
Vi 'workalike' with many additional features
https://www.vim.org/
Conflicts with:
  ex-vi (because vim and ex-vi both install bin/ex and bin/view)
  macvim (because vim and macvim both install vi* binaries)
/opt/homebrew/Cellar/vim/9.0.0300 (2,070 files, 37.8MB) *
  Poured from bottle on 2022-08-30 at 00:38:30
From: https://github.com/Homebrew/homebrew-core/blob/HEAD/Formula/vim.rb
License: Vim
==> Dependencies
Required: gettext ✔, lua ✔, ncurses ✔, perl ✔, python@3.10 ✔, ruby ✔
==> Options
--HEAD
	Install HEAD version
==> Analytics
install: 89,601 (30 days), 232,635 (90 days), 954,155 (365 days)
install-on-request: 89,545 (30 days), 232,463 (90 days), 953,524 (365 days)
build-error: 10 (30 days)

Homebrewのコマンド一覧を表示(brew commands)

Homebrewコマンドの一覧を表示するには、「brew commands」を使います。

$ brew commands
==> Built-in commands
--cache          analytics        deps             help             log              readall          unlink           uses
〜略〜

コマンドの使い方を見る(brew help コマンド名)

「brew help コマンド名」で、そのコマンドの使い方を見ることができます。

$ brew help update
Usage: brew update [options]

Fetch the newest version of Homebrew and all formulae from GitHub using git(1)
and perform any necessary migrations.

      --merge                      Use git merge to apply updates (rather than
                                   git rebase).
      --auto-update                Run on auto-updates (e.g. before brew
                                   install). Skips some slower steps.
  -f, --force                      Always do a slower, full update check (even
                                   if unnecessary).
  -q, --quiet                      Make some output more quiet
  -v, --verbose                    Print the directories checked and git
                                   operations performed.
  -d, --debug                      Display a trace of all shell commands as they
                                   are executed.
  -h, --help                       Show this message.

Homebrewや、パッケージのページを表示する

brew home」は、Homebrewやパッケージの、ページを表示するコマンドです。
まず、Homebrewのページを表示してみます。

$ brew home

ブラウザが開き、Homebrewのページが表示されたと思います。

さらに、この後にパッケージ名を入力することで、そのパッケージのページを表示することもできます。

$ brew home vim

すると、Vimのページを開くことができます。

Homebrewのマニュアルを表示(man brew)

Homebrewのマニュアルを表示するには、「man brew」を使います。

$ man brew

Brewfileによるパッケージの管理

たとえば、Macを買い換えた時とかに、もう一度同じ環境をHomebrewで作りたい、ということがあると思います。
しかし、またひとつずつインストールしていては、とても大変です。

そんなときは、Brewfileを使ってパッケージ管理をすると便利です。

Brewfileの作成

Brewfileを作るには、次のコマンドを実行する方法がかんたんです。

$ brew bundle dump

lsで確認すると、Brewfileが作られていることが分かります。

$ ls
Brewfile

Brewfileには、これまでインストールしたパッケージ名が書かれています。
たとえば、こんな感じです。

tap "daipeihust/tap"
tap "homebrew/bundle"
tap "homebrew/cask"
tap "homebrew/cask-fonts"
tap "homebrew/core"
tap "sidneys/homebrew"
brew "aria2"
brew "cabextract"
brew "cask"
brew "cdrtools"
brew "deno"
brew "git"
cask "utm"
cask "visual-studio-code"

これで、Brewfileによる管理をはじめることができます。

Brewfileに書かれたパッケージをインストール

新しいMacなどで、Homebrewインストールしたら、さきほどのように作っておいたBrewfileを使って、パッケージをまとめてインストールすることがきます。

cdでBrewfileのあるディレクトリに移動し、次のコマンドを実行します。

$ brew bundle

これで、Brewfileに書かれたパッケージをインストールすることができます。

Brewfileから消したパッケージを削除

Brewfileからパッケージを削除したいときは、Brewfileに書かれたパッケージを削除した後、次のコマンドを実行します。

$ brew bundle cleanup

うまく削除できない場合は、「--force」オプションを使うとうまくいくかもしれません。

$ brew bundle cleanup --force

Homebrewのアンインストール

もし万が一、もうHomebrewは使わないぞ、と思ったら、アンインストールも可能です。
注意点として、Homebrewを使ってインストールしていたパッケージは、すべて削除されます
(私の環境では、caskは削除されませんでした)

次のコマンドを実行しましょう。

$ /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/uninstall.sh)"

「Are you sure you want to uninstall Homebrew? This will remove your installed packages! [y/N]」と表示されたら、「y」と入力してreturnを押します。

さらにパスワードを訊かれますので、入力してreturnを押します。

すると次のようなメッセージが表示されますので、これらを見ながら、もしそのファイルやディレクトリを消したい場合は、ひとつずつ手作業で削除します。
(すべて消したければ、homebrewディレクトリごと削除してしまってもいいと思います)

The following possible Homebrew files were not deleted:
/opt/homebrew/.DS_Store
/opt/homebrew/Frameworks/
/opt/homebrew/bin/
/opt/homebrew/etc/
/opt/homebrew/include/
/opt/homebrew/lib/
/opt/homebrew/opt/
/opt/homebrew/sbin/
/opt/homebrew/share/
/opt/homebrew/var/
You may wish to remove them yourself.

表示されたWarning

brew doctorを使ったときに、私自身の環境で表示されたWarningを以下に記します。
ただ、かなり前に表示されたものが多いので、情報が古い可能性があります。

Warning: “config” scripts exist outside your system or Homebrew directories. …

以下のようなエラーが表示された場合です。

Warning: "config" scripts exist outside your system or Homebrew directories.
`./configure` scripts often look for *-config scripts to determine if
software packages are installed, and what additional flags to use when
compiling and linking.

Having additional scripts in your path can confuse software installed via
Homebrew if the config script overrides a system or Homebrew provided
script of the same name. We found the following "config" scripts:
  /Users/xxxxx/Library/Python/3.6/bin/powerline-config
  /usr/local/opt/pkg-config

こちらは、以下を.zshrcや.bash_profileなどに入力することで解決するようです。

alias brew="PATH=/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin brew"

参考サイト : pyenv をインストールしてると brew doctor で出る Warning を消す方法

Warning: Broken symlinks were found. Remove them with `brew prune` …

以下のようなエラーが表示された場合です。

Warning: Broken symlinks were found. Remove them with `brew prune`:
  /usr/local/bin/bower

brew pruneを実行すればOKです。

$ brew prune
Pruned 21 symbolic links and 24 directories from /usr/local

Warning: You have unlinked kegs in your Cellar …

以下のようなエラーが表示された場合です。

Warning: You have unlinked kegs in your Cellar
Leaving kegs unlinked can lead to build-trouble and cause brews that depend on
those kegs to fail to run properly once built. Run `brew link` on these:
  node
  git

言われた通りに、brew linkしてみたのですが、エラーが表示されたので、強制的に上書きしてくれるオプションをつけたら解決しました。

$ brew link --overwrite node
Linking /usr/local/Cellar/node/10.0.0... 7 symlinks created
$ brew link --overwrite git 
Linking /usr/local/Cellar/git/2.17.0... 188 symlinks created

Warning: Unbrewed header files were found in /usr/local/include. …

以下のようなエラーが表示された場合です。

Warning: Unbrewed header files were found in /usr/local/include.
If you didn't put them there on purpose they could cause problems when
building Homebrew formulae, and may need to be deleted.

Unexpected header files:
  /usr/local/include/python3.6m/greenlet/greenlet.h

/usr/local/include/python3.6m/greenlet/greenlet.hを削除することで、エラーは表示されなくなりました。

まとめ

今回はHomebrewの使い方を紹介しました。
Homebrewを使うと、パッケージの管理がとても楽になり、Web開発やソフトウェア開発などでとても便利になります。

さまざまなところでこのツールを使いますので、ぜひ使い方を覚えておくといいですね。

オリジナルゲーム.com