Homebrew は使いやすいパッケージマネジャーだが、brew install しただけでは使えないものがありはまってしまったのでメモ。
例えば、sqlite3 の場合、brew info で確認すると、
$ brew info sqlite
sqlite: stable 3.7.15.2
http://sqlite.org/
This formula is keg-only.
Mac OS X already provides this software and installing another version in
parallel can cause all kinds of trouble.
OS X already provides (an older) sqlite3.
Depends on: readline
/usr/local/Cellar/sqlite/3.7.15.2 (9 files, 1.9M) *
https://github.com/mxcl/homebrew/commits/master/Library/Formula/sqlite.rb
==> Options
--universal
Build a universal binary
--with-docs
Install HTML documentation
--with-fts
Enable the FTS module
--with-functions
Enable more math and string functions for SQL queries
--without-readline
Build without readline support
--without-rtree
Disable the R*Tree index module
keg-only の場合、せっかく brew install しても、/usr/local/bin 等にシンボリックリンクが作られない。
これを解決するには、brew link する。
$ brew link sqlite --force
Linking /usr/local/Cellar/sqlite/3.7.15.2... 9 symlinks created
これで、シンボリックリンクが作成され、brew install したパッケージが利用できる。
ちなみに、「--force」を付けないと
$brew link sqlite
Warning: sqlite is keg-only and must be linked with --force
Note that doing so can interfere with building software.
と怒られ、作成されない。
[2013/07/29]追記
上記では対応出来ないものもあるみたい。
gitを上記方法でやってもbrewのgitを見てくれない。
$ git --version
git version 1.7.12.4 (Apple Git-37)
$ which git
/usr/bin/git
$ ls -l /usr/bin/git
-rwxr-xr-x 1 root wheel 2824288 7 14 17:58 /usr/bin/git
ls -l /usr/local/bin/git
lrwxr-xr-x 1 hogehoge admin 29 7 28 20:01 /usr/local/bin/git -> ../Cellar/git/1.8.3.4/bin/git
/usr/binにあるgitが優先されてる模様。
/etc/pathsをviして、対応。
/usr/bin
/bin
/usr/sbin
/sbin
/usr/local/bin
を
/usr/local/bin
/usr/bin
/bin
/usr/sbin
/sbin
に変更。ターミナル再起動でようやく
$ git --version
git version 1.8.3.4
となった!
もしくは、~/.bash_profile に
export PATH=/usr/local/bin:$PATH
を記載でも良い。