[Sy] Homebrewでoctaveを入れようとしたらWarningが出た
Homebrewを使ってoctaveをインストールしようとしたら色々ハマったのでメモ。
基本はここを参考にしました。
⇒ OctaveをMac OS X Yosemiteへインストール - Qiitaとりあえずインストールしてみる
まず普通にインストールしようとすると、
$ brew install octave
Error: No available formula for octave
Searching formulae...
Searching taps...
homebrew/science/octave Caskroom/cask/octave Caskroom/cask/xoctave
と、そんなものはないよと怒られます。ここまでは記事にあったので想定内。
ここでbrew tap homebrew/science
とするとインストールできるよと書いてあったのでやってみると、Warningがでました。
$ brew tap homebrew/science
Cloning into '/usr/local/Library/Taps/homebrew/homebrew-science'...
・
・
・
Warning: Could not create link for homebrew/science/datamash, as it
conflicts with Homebrew/homebrew/datamash. You will need to use the
fully-qualified name when referring this formula, e.g.
brew install homebrew/science/datamash
Warning: Could not create link for homebrew/science/ticcutils, as it
conflicts with Homebrew/homebrew/ticcutils. You will need to use the
fully-qualified name when referring this formula, e.g.
brew install homebrew/science/ticcutils
Warning: Could not create link for homebrew/science/timbl, as it
conflicts with Homebrew/homebrew/timbl. You will need to use the
fully-qualified name when referring this formula, e.g.
brew install homebrew/science/timbl
Warning: Could not create link for homebrew/science/wopr, as it
conflicts with Homebrew/homebrew/wopr. You will need to use the
fully-qualified name when referring this formula, e.g.
brew install homebrew/science/wopr
Tapped 547 formulae
conflicts
とあるのでパッケージの名前の競合??そもそもbrew tap
で何やってるのかわかってないので一旦調べることにしました。
brew tapについて調べる
次の記事が参考になりました。
⇒ これは便利!Homebrewに追加されたtapコマンドはリポジトリを追加して簡単にフォーミュラを増やせる | Macとかの雑記帳Homebrewに「tap」というコマンドが追加されました。このコマンドを使う事で、公式以外でフォーミュラを公開していたリポジトリをhomebrewの中に取り込むことができ、$ brewコマンドで扱えるようになります。
なるほど、やっぱりそうですよね。
Warningの内容を再確認
改めてWarningを見てみると、なんとなくわかってきました。こんな感じでしょうか?
- 本来なら、
$ brew install datamash
みたいにインストールできるようになる。 - でもすでに同じ名前のフォーミュラがあるから、
$ brew install homebrew/science/datamash
みたいにしないとだめ。
おそらく、面倒ではあるけどこのままでもインストール自体はできそうですね。
でも気持ち悪いので一応解決方法を探すことに。
brew updateしてからもう一度やってみるとどうだろう?
しばらくHomebrewを放置していたので、その辺が問題なのかもしれないと予測。
untap
というコマンドがあるみたいなので、まずはhomebrew/science
をuntap
して、brew update
を行ってからもう一度tap
してみます。
先ほど$ brew tap homebrew/science
としたことで、以下のディレクトリが作られてました。
/usr/local/Library/Taps/homebrew/homebrew-science/
ここでuntap
をしてみます。
$ brew untap homebrew/science
Untapped 547 formulae
すると先ほどのディレクトリが消えました。
続けて一度brew update
します。
$ brew update ```
updateが終わってから改めてhomebrew/science
をtap
すると、
$ brew tap homebrew/science
==> Tapping homebrew/science
・
・
・
Tapped 547 formulae (574 files, 2.9M)
お、Warningが出なくなりました。
いよいよ本題のoctaveをインストール
ようやくoctaveのインストール。
$ brew install octave
==> Installing octave from homebrew/homebrew-science
・
・
・
Conflicts with suite-sparse
Generally there are no consequences of this for you. If you build your
own software and it requires this formula, you'll need to add to your
build variables:
LDFLAGS: -L/usr/local/opt/suite-sparse421/lib
CPPFLAGS: -I/usr/local/opt/suite-sparse421/include
・
・
・
==> Summary
🍺 /usr/local/Cellar/octave/3.8.2_2: 2111 files, 54M
なんか一つコンフリクトが起きてるみたいですが、インストール自体はできた様子。試しに起動してみると、
% octave
GNU Octave, version 3.8.2
Copyright (C) 2014 John W. Eaton and others.
This is free software; see the source code for copying conditions.
There is ABSOLUTELY NO WARRANTY; not even for MERCHANTABILITY or
FITNESS FOR A PARTICULAR PURPOSE. For details, type 'warranty'.
Octave was configured for "x86_64-apple-darwin14.4.0".
Additional information about Octave is available at http://www.octave.org.
Please contribute if you find this software useful.
For more information, visit http://www.octave.org/get-involved.html
Read http://www.octave.org/bugs.html to learn how to submit bug reports.
For information about changes from previous versions, type 'news'.
octave:1>
一応動いてるっぽい。先ほどのコンフリクトが気になりますが、今日のところはこれで・・・
(おまけ)Javaのバージョン確認
octaveにはJava6が必要とのことでしたが、確認してみたら入ってました。
$ java -version
java version "1.6.0_65"
Java(TM) SE Runtime Environment (build 1.6.0_65-b14-466.1-11M4716)
Java HotSpot(TM) 64-Bit Server VM (build 20.65-b04-466.1, mixed mode)