UP | HOME

ITL/パッケージ管理システム homebrew の導入

目次

1 概要

homebrew は研究環境に必要な様々な UNIX ツールをまとめて管理(インストール, ライブラリ依存関係のチェック,アンインストールなど)してくれるパッケージ管理システ ムである.

homebrew は同様の Mac 用パッケージ管理システムである macport に比べてインストール にかかる負荷が軽い.これは homebrew では「Mac OS X に標準でついてくるものまでわざ わざインストールしない」という方針が採用されているためである.

2 Homebrew 本体のインストール

2.1 参考サイト

2.2 Homebrew のインストール

  1. 本体のダウンロード.ターミナルから以下を実行:

    /usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
    
    • Press RETURN to continue or any other 何か訊かれたら RETURN を押す.
    • パスワードの入力を求められたら入力する.
    • ダウンロードが始まる.
  2. 診断する.ターミナルから以下を実行:

    brew doctor
    

    Your system is ready to brew と表示されれば OK.

  3. brew bundle を使って必要なパッケージを一気にインストール

    curl https://raw.githubusercontent.com/nagae/itl/resource/Brewfile -o ~/Brewfile
    cd ~/
    brew bundle
    

    上述でインストールされる パッケージ一覧

    • 自分が現在インストールしているパッケージを出力するには brew bundle dump とすればよい.

3 Homebrew の使い方

3.1 ワークフロー

  • 必要なツールをインストール

    $ brew search foo             # foo という名前の formula を探す
    $ brew options foo            # foo のインストール時に設定できるオプション一覧を表示
    $ brew install [options] foo  # foo という名前の formula をインストールする
    
  • 週に1度くらいは自身のアップデートと formula 更新

    $ brew update                 # Homebrew 自身をアップデート
    $ brew outdated               # 更新された formula 一覧を表示
    $ brew upgrade                # 更新された formula をアップグレード
    

3.2 基本コマンド

コマンド 機能
brew update 自分自身をアップデート
brew outdated 更新された formula を表示
brew upgrade 更新された formula をアップグレード
brew doctor Homebrew を自己診断
brew search foo foo という名前の formula を検索
brew options foo foo をインストールする際に設定できるオプション一覧を表示
brew install foo foo をインストール
brew list インストール済の formula 一覧を表示
brew list foo foo という名前の formula がインストールしたファイル一覧を表示
brew unlink foo foo へのシンボリックリンクを外す
brew remove foo foo を削除する

3.2.1 brew update すると error: The following untracked working tree files would be overwritten by merge: というエラーが出る(13.10.25)

brew update しようとすると以下のようなエラーメッセージが出る場合の対処法:

$ brew update
error: The following untracked working tree files would be overwritten by merge:
  Library/Formula/apple-gcc42.rb
Please move or remove them before you can merge.
Aborting
Error: Failure while executing: git pull -q origin refs/heads/master:refs/remotes/origin/master

適当な名前のフォルダ(eg. .temporary_stack)を作って,その中に apple-gcc42.rb を移動させる

cd /usr/local/Library/Formula/
mkdir .temporary_stack
mv apple-gcc42.rb .temporary_stack/

あとはいつも通り brew update する

brew update

著者: Takeshi Nagae

Created: 2019-03-30 Sat 19:59

Emacs 24.3.1 (Org mode 8.2.5h)

Validate