brew doctorコマンドとは
インストールの問題のチェックを行うコマンド
試しにやってみたら沢山のWarningが出たので一つずつ解決していこうと思います。
警告_1
Warning: Homebrew's sbin was not found in your PATH but you have installed
formulae that put executables in /usr/local/sbin.
Consider setting the PATH for example like so
echo 'export PATH="/usr/local/sbin:$PATH"' >> ~/.bash_profile
解決法
言われている通りのコマンドを打つだけです。
追加後、source
で再読み込みを行います。
$ echo 'export PATH="/usr/local/sbin:$PATH"' >> ~/.bash_profile
$ source ~/.bash_profile
警告_2
ディレクトリ毎に <PATH>
の部分だけが違った以下のようなエラーが複数でる場合があります。
Warning: Unbrewed dylibs were found in <PATH>.
If you didn't put them there on purpose they could cause problems when
building Homebrew formulae, and may need to be deleted.
このようなエラーの後に、例えば
Unexpected dylibs:
/usr/local/lib/libopencv_calib3d.3.1.0.dylib
/usr/local/lib/libopencv_core.3.1.0.dylib
/usr/local/lib/libopencv_features2d.3.1.0.dylib
/usr/local/lib/libopencv_flann.3.1.0.dylib
/usr/local/lib/libopencv_highgui.3.1.0.dylib
/usr/local/lib/libopencv_imgcodecs.3.1.0.dylib
/usr/local/lib/libopencv_imgproc.3.1.0.dylib
/usr/local/lib/libopencv_ml.3.1.0.dylib
/usr/local/lib/libopencv_objdetect.3.1.0.dylib
/usr/local/lib/libopencv_photo.3.1.0.dylib
/usr/local/lib/libopencv_shape.3.1.0.dylib
/usr/local/lib/libopencv_stitching.3.1.0.dylib
/usr/local/lib/libopencv_superres.3.1.0.dylib
/usr/local/lib/libopencv_video.3.1.0.dylib
/usr/local/lib/libopencv_videoio.3.1.0.dylib
/usr/local/lib/libopencv_videostab.3.1.0.dylib
という感じです。
解決法
Unexpected dylibs:
に続くファイル一覧を rm -f
で削除してあげます。rm
は、ファイルやディレクトリを削除してあげるコマンドで、 -f
は、「削除しますか?」的なメッセージを都度出さないようにするオプションです。
手順1 対象となるファイル一覧をコピーして、shファイルに貼り付ける。
全てに rm -f
を手作業で貼り付けで実行するのは大変なので、Vimを使って纏めてコマンドを作ってターミナルで実行します。
shファイル
は人間の命令をコンピュータ様に伝えるファイル..じゃないかな。そんな感じ
まずは新規ファイルを作ります。
$ vim ~/.del_files.sh
ネーミングセンスがないのはほっといてください。
ここに先程の対象となるファイルのパス一覧を貼り付けます。
1行目には #!/bin/bash
を記述します。
参考URLとして、シバン (Unix)
貼り付けし終わったら、exc
キーで コマンドモード
に戻り、一旦 Ctrl + w
で保存をします。
手順2 各行の先頭に「rm -f 」を追加する。
点滅カーソルが #!/bin/bash
の行を除く1行目、今回でいう2行目にあるのを確認した後に
CTRL + v
で 矩形選択のビジュアルモード
にします。
次に、カーソルを 矢印キー↓
で下まで移動して範囲を選択します。
選択し終わったら、 :
を押します。
すると、下のラインに既に :'<,'>
が入力された状態でコマンドラインが表示されるので、続けて s/^/rm -f /
と入力します。-f
の後には 半角スペース
を忘れずに。
今回は既に先頭にスペースが入ってるかもしれないので不要かもしれませんが。
このように入力し終わったら
.
.
.ENTER
キー
このようになるので、Ctrl + wq
で保存・ファイルを閉じます。
手順3 shファイルを実行する。
これは直ぐに終わります。
もとのターミナルに戻ってきたら、
$ bash ~/.del_files.sh
を実行するだけです。
一瞬で終わります。
手順4 デッドリンクになってしまったものを削除
手順2が終わった後に、試しに brew doctor
をしてみると以下のようなエラーがでる場合があります。
Warning: Broken symlinks were found. Remove them with `brew prune`:
<以下ファイルパス>
この場合、警告で言われている通り brew prune
をコマンドで叩けば解決します。
警告_3
Warning: A newer Command Line Tools release is available.
Update them from Software Update in the App Store.
解決法
App StoreからCommand Line Toolsをアップデートするだけです。
終わり
$ brew doctor
Your system is ready to brew.
と表示されたら Mission complete.