はじめに
Macを操作しているとhomebrewという名前を聞くことはありませんか?
言われるがままコマンドをコピペして実行したら、、、なんとなく出来た。
出来たからまぁいいか!とそのままになりがちでした。
そんなhomebrewについて勉強ついでにまとめてみました。
概要
wikipediaによると、
homebrewとは、Mac OS Xオペレーティングシステム上でソフトウェアの導入を単純化するパッケージ管理システムのひとつである。
とあります。と言われても難しいですね。。。
ひとまず簡単に言うとAppStoreみたいなやつのことなんです。
サードパーティのアプリはAppStoreにアップロードをすると他のユーザー全員に見えるようになってインストールやアンインストールが出来ますよね。
それと同じことがhomebrewでも出来ますよ!っていうことです。
実際にhomebrewをインストールしながら見て行きましょう。
homebrewのインストール
homebrewの公式サイトに次のコマンドを打てばインストールできるよ!って書いてあります。
ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
-
ruby -e
というのは、次のスクリプトをrubyで実行する -
"$(curl URL)"
でURL先のコンテンツをDLする
実際に
https://raw.githubusercontent.com/Homebrewinstall/master/install
このURLを叩いてみるとrubyのコードがずらりと書いてあるのがわかりますね。
これでhomebrewをインストールしているということです。
では実際に実行してみてください。
こんな感じに出たらOKです!
ためしにbrew doctor
を叩いてみてください。
これが出たら完璧です!!
もしもErrorやWarningが出てきたら書いてある英語通りに実行してみてください。
試しにパッケージをインストール!してみる前に、、、
冒頭で話をしたとおりhomebrewはパッケージ管理システムです。
今回はちょっと中身を理解してもらいたいので、すんなりインストールはしません。
まずは今回使うコマンドを見てみましょう。
brew install ○○
これは「○○」をインストールするコマンドです。
brew unistall ○○
これは「○○」をアンインストールするコマンドです。
brew info ○○
これは「○○」のインストール状態や必要なパッケージをみるコマンドです。
この3つのコマンドを使って中を見て行きましょう
パッケージをインストール
今回は試しに「mysql」をインストールしてみましょう。
まずはmysqlのインストール状態を見て行きます。
brew info mysql
を実行してみてください。
こんな感じで出てきましたか?これはBuildに「cmake」というパッケージを使います。opensslというパッケージが必須です。と言っています。
「☓」はまだパッケージを持っていないよということでしょう。
じゃあ「openssl」のパッケージを見てみましょう。
例に習ってbrew info openssl
を叩いてみてください。
次はBuildに「makedepend」というパッケージを使うと言っています。
ではbrew info makedepend
をしてみてください。
「makedepend」はpkg-configでBuildすると言っています。
brew info pkg-config
をしてみてください。
「pkg-config」は特に必要な物はないようですね。
試しに「pkg-config」だけインストールしてみます。
brew install pkg-config
これで「pkg-config」がインストールできました!
「pkg-config」を必要としていた「makedepend」の情報を見てみましょう。
brew info makedepend
「pkg-config」が☓からチェックマークに変わりましたね!!
これをみてわかるように一つのパッケージは何かのパッケージに依存しています。
これを管理してくれているのがhomebrewなんです。
今回は色々中身を見ていきましたが、brew install mysql
をすることで
依存するこれらいろんなパッケージをすべてインストールしてくれます。
いろんなパッケージ
いままでパッケージと呼んでいましたがhomebrewではパッケージのことを「formula」と呼びます。
どんなformulaがあるのかというのは、こちらのサイトで確認できます。
有名どころは大抵揃っていてMysqlやGitなどもhomebrewから最新版を落とせます。
さいごに
今回は勉強がてらhomebrewとはなにかというのを実際のコマンドを叩いて見ていきました。
自分もまだまだ理解していないことが多いように思います。
もし間違いなどがあればコメントなどに書いてくださるとありがたいです。