月額定額プランのご案内ログイン
Web開発
Mac を買ったら即入れておけ! 2022年版 Homebrew のインストールとその使い方
1 min
Mac を買ったら即入れておけ! 2022年版 Homebrew のインストールとその使い方

macOS ユーザの皆さん、こんにちは。はむさんです。

さて、みなさんは、パッケージマネージャはお使いでしょうか? ウェブ開発においては、特に Linux の世界では当たり前のように使われているこのパッケージマネージャですが、必要な機能を正確にインストールするにはとっても便利な機能になりますね。 しかしながら、標準の macOS にはこのパッケージマネージャという機能は残念ながら提供されていません。 そこで今回紹介するのが Homebrew です。

この Homebrew は、brew と短く呼ぶこともありますので、以降は短い方で呼んでいきます。この brew の公式サイトは、 homebrew で検索すると見つかるかと思います。

URL は、 https://brew.sh/index_ja です。

Homebrew top page

今回、なぜ、brew を紹介するのかと言うと、 この brew は、macOS のために開発されたパッケージマネージャーなんです。 この brew を使って、nodenv や node、あるいは rbenv とか ruby とか、あるいは git や bash 等、ウェブ開発者にとって欠かせないパッケージを簡単にインストールしたり管理することができるからなんです。

Linux、例えば、CentOS であれば yum コマンド、あるいは、Ubuntu であれば apt-get コマンドなどでパッケージのインストールをしたことがある人もいるかもしれませんが、macOS において、それらに該当するものがこの brew になります。 macOS でも yum や apt-get と同じように、この brew を一度入れてしまえば、煩わしい パッケージのインストールをコマンドライン一発で進めていけるというのはプログラマーにとって非常にありがたいですよね。

mac を持っている大抵のプログラマーは、mac を買ってきて、電源を入れたらすぐにこの brew をインストールする!っていっても過言じゃないくらいの鉄板のツールとなっています。インストールも簡単なので、まだ使ったことがないと言う方は是非この機会に入れてみてください。

では、brew コマンドをインストールをしていきますが、まず、インストール前に、コマンドがないこと確かめておきますね。

画面右上の Spotlight 検索のアイコンをクリックして、Terminal.app と入力して、ターミナルを開きます。

Spotlight検索
$ type brew
-zsh: type: brew: not found

brew についても type コマンドでコマンドがあるかどうかみてみると、この通り、not foundって表示されますよね。 デフォルトの状態だとこのようにコマンドがありません!と表示されます。

Homebrew のホームページはこちらです。

https://brew.sh/index_ja

では、こちらの Homebrew のリンクをクリックして、Homebrew のトップページに移って、 「インストール」のところにある、こちらの コマンドをコピーしてターミナルに貼り付けましょう!

インストール
$ /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
==> Checking for `sudo` access (which may request your password).
Password:
==> This script will install:
/usr/local/bin/brew
/usr/local/share/doc/homebrew
/usr/local/share/man/man1/brew.1
/usr/local/share/zsh/site-functions/_brew
/usr/local/etc/bash_completion.d/brew
/usr/local/Homebrew
==> The Xcode Command Line Tools will be installed.

Press RETURN to continue or any other key to abort
==> /usr/bin/sudo /usr/sbin/chown -R ham:admin /usr/local/Homebrew
==> Searching online for the Command Line Tools
==> /usr/bin/sudo /usr/bin/touch /tmp/.com.apple.dt.CommandLineTools.installondemand.in-progress
==> Installing Command Line Tools for Xcode-13.1
==> /usr/bin/sudo /usr/sbin/softwareupdate -i Command\ Line\ Tools\ for\ Xcode-13.1
Software Update Tool

:
:
:

すると、あとはインストーラが走ります。途中で、「インストールを続けても良いなら RETURN を押してね!」って言っています。 ここで RETURN キーを叩きます!

==> /usr/bin/sudo /usr/sbin/chown -R ham:admin /usr/local/Homebrew
==> Downloading and installing Homebrew...
remote: Enumerating objects: 69, done.
remote: Counting objects: 100% (66/66), done.
remote: Compressing objects: 100% (25/25), done.
remote: Total 69 (delta 49), reused 45 (delta 40), pack-reused 3
Unpacking objects: 100% (69/69), 25.69 KiB | 392.00 KiB/s, done.
From https://github.com/Homebrew/brew
 + 19e059235...d42aff248 buildpulse-retry                                         -> origin/buildpulse-retry  (forced update)
 + 1d34c7a91...a9059239f dependabot/bundler/Library/Homebrew/rubocop-rails-2.11.1 -> origin/dependabot/bundler/Library/Homebrew/rubocop-rails-2.11.1  (forced update)
   aa14e48f4..51cfd7362  master                                                   -> origin/master
HEAD is now at 51cfd7362 Merge pull request #11601 from Homebrew/dependabot/bundler/Library/Homebrew/activesupport-6.1.4
Updated 3 taps (homebrew/cask-versions, homebrew/core and homebrew/cask).
==> Installation successful!

==> Homebrew has enabled anonymous aggregate formulae and cask analytics.
Read the analytics documentation (and how to opt-out) here:
  https://docs.brew.sh/Analytics
No analytics data has been sent yet (or will be during this `install` run).

==> Homebrew is run entirely by unpaid volunteers. Please consider donating:
  https://github.com/Homebrew/brew#donations

==> Next steps:
- Run `brew help` to get started
- Further documentation:
    https://docs.brew.sh

続きは上のような感じで処理が続きます。 Installation successful という案内が表示されます。 インストールが成功したようです!

ここまで来たら正常に brew がインストールされたことになります。 brew help と入力してエンターキーを押してみましょう。

$ brew help
Example usage:
  brew search TEXT|/REGEX/
  brew info [FORMULA|CASK...]
  brew install FORMULA|CASK...
  brew update
  brew upgrade [FORMULA|CASK...]
  brew uninstall FORMULA|CASK...
  brew list [FORMULA|CASK...]

Troubleshooting:
  brew config
  brew doctor
  brew install --verbose --debug FORMULA|CASK

Contributing:
  brew create URL [--no-fetch]
  brew edit [FORMULA|CASK...]

Further help:
  brew commands
  brew help [COMMAND]
  man brew
  https://docs.brew.sh

brew helpを実行すると、ご覧のように brew コマンドに関するヘルプが表示されます。

あとは適宜必要なパッケージをインストールするだけです。

では、折角なので、 brew を使ってパッケージのインストールを行ってみましょう。brewでインストールできる有名なパッケージに wget というファイルダウンローダがありますのでこれを入れてみましょう。まず、デフォルトだとwgetコマンドは macOS にはインストールされていませんので type コマンドで確認しておきます。

$ type wget
-bash: type: wget: not found

はい、この通り wget コマンドは見つかりませんでした。では、 brew コマンドで wget コマンドを検索してみます。

$ brew search wget
==> Formulae
wget        wgetpaste

検索するには、brew のサブコマンドである search、そして引数に wget を渡します。 すると、検索結果に wget が表示されましたね。 wget パッケージの詳細を brew info コマンドで調べてみましょう。

$ brew info wget
wget: stable 1.21.2 (bottled), HEAD
Internet file retriever
https://www.gnu.org/software/wget/
/usr/local/Cellar/wget/1.21.2 (89 files, 4.2MB) *
  Poured from bottle on 2021-11-09 at 20:47:07
From: https://github.com/Homebrew/homebrew-core/blob/HEAD/Formula/wget.rb
License: GPL-3.0-or-later
==> Dependencies
Build: pkg-config ✔
Required: libidn2 ✔, openssl@1.1 ✔
==> Options
--HEAD
        Install HEAD version
==> Analytics
install: 178,233 (30 days), 654,470 (90 days), 1,930,917 (365 days)
install-on-request: 177,723 (30 days), 651,709 (90 days), 1,921,977 (365 days)
build-error: 14 (30 days)

brew info wgetを実行すると、色々と情報が表示されました。 ここで分かるのは、公式のページが https://www.gnu.org/software/wget/ であることです。 公式ページをみてみると、wget の概要について書かれています。

では、wget を brew でインストールしてみましょう。実行するコマンドは、brew install wgetです。

$ brew install wget
==> Installing dependencies for wget: gettext, libunistring, libidn2 and openssl
==> Installing wget dependency: gettext
==> Downloading https://homebrew.bintray.com/bottles/gettext-0.
######################################################################## 100.0%
==> Pouring gettext-0.19.8.1.high_sierra.bottle.tar.gz
==> Caveats
gettext is keg-only, which means it was not symlinked into /usr/local,
because macOS provides the BSD gettext library & some software gets confused if both are in the library path.

If you need to have gettext first in your PATH run:
  echo 'export PATH="/usr/local/opt/gettext/bin:$PATH"' >> ~/.bash_profile

For compilers to find gettext you may need to set:
  export LDFLAGS="-L/usr/local/opt/gettext/lib"
  export CPPFLAGS="-I/usr/local/opt/gettext/include"

==> Summary
🍺  /usr/local/Cellar/gettext/0.19.8.1: 1,935 files, 16.9MB
==> Installing wget dependency: libunistring
==> Downloading https://homebrew.bintray.com/bottles/libunistri
######################################################################## 100.0%
==> Pouring libunistring-0.9.10.high_sierra.bottle.tar.gz
🍺  /usr/local/Cellar/libunistring/0.9.10: 54 files, 4.4MB
==> Installing wget dependency: libidn2
==> Downloading https://homebrew.bintray.com/bottles/libidn2-2.
######################################################################## 100.0%
==> Pouring libidn2-2.1.1a.high_sierra.bottle.tar.gz
🍺  /usr/local/Cellar/libidn2/2.1.1a: 69 files, 691.6KB
==> Installing wget dependency: openssl
==> Downloading https://homebrew.bintray.com/bottles/openssl-1.
######################################################################## 100.0%
==> Pouring openssl-1.0.2r.high_sierra.bottle.tar.gz
==> Caveats
A CA file has been bootstrapped using certificates from the SystemRoots
keychain. To add additional certificates (e.g. the certificates added in
the System keychain), place .pem files in
  /usr/local/etc/openssl/certs

and run
  /usr/local/opt/openssl/bin/c_rehash

openssl is keg-only, which means it was not symlinked into /usr/local,
because Apple has deprecated use of OpenSSL in favor of its own TLS and crypto libraries.

If you need to have openssl first in your PATH run:
  echo 'export PATH="/usr/local/opt/openssl/bin:$PATH"' >> ~/.bash_profile

For compilers to find openssl you may need to set:
  export LDFLAGS="-L/usr/local/opt/openssl/lib"
  export CPPFLAGS="-I/usr/local/opt/openssl/include"

==> Summary
🍺  /usr/local/Cellar/openssl/1.0.2r: 1,795 files, 12.1MB
==> Installing wget
==> Downloading https://homebrew.bintray.com/bottles/wget-1.20.
######################################################################## 100.0%
==> Pouring wget-1.20.1_4.high_sierra.bottle.tar.gz
🍺  /usr/local/Cellar/wget/1.20.1_4: 49 files, 3.9MB
==> `brew cleanup` has not been run in 30 days, running now...
Pruned 0 symbolic links and 2 directories from /usr/local
==> Caveats
==> gettext
gettext is keg-only, which means it was not symlinked into /usr/local,
because macOS provides the BSD gettext library & some software gets confused if both are in the library path.

If you need to have gettext first in your PATH run:
  echo 'export PATH="/usr/local/opt/gettext/bin:$PATH"' >> ~/.bash_profile

For compilers to find gettext you may need to set:
  export LDFLAGS="-L/usr/local/opt/gettext/lib"
  export CPPFLAGS="-I/usr/local/opt/gettext/include"

==> openssl
A CA file has been bootstrapped using certificates from the SystemRoots
keychain. To add additional certificates (e.g. the certificates added in
the System keychain), place .pem files in
  /usr/local/etc/openssl/certs

and run
  /usr/local/opt/openssl/bin/c_rehash

openssl is keg-only, which means it was not symlinked into /usr/local,
because Apple has deprecated use of OpenSSL in favor of its own TLS and crypto libraries.

If you need to have openssl first in your PATH run:
  echo 'export PATH="/usr/local/opt/openssl/bin:$PATH"' >> ~/.bash_profile

For compilers to find openssl you may need to set:
  export LDFLAGS="-L/usr/local/opt/openssl/lib"
  export CPPFLAGS="-I/usr/local/opt/openssl/include"

:
:
:
==> gettext
gettext is keg-only, which means it was not symlinked into /usr/local,
because macOS provides the BSD gettext library & some software gets confused if both are in the library path.

If you need to have gettext first in your PATH run:
  echo 'export PATH="/usr/local/opt/gettext/bin:$PATH"' >> ~/.bash_profile

For compilers to find gettext you may need to set:
  export LDFLAGS="-L/usr/local/opt/gettext/lib"
  export CPPFLAGS="-I/usr/local/opt/gettext/include"

はい、以上で、 wget のインストールができました。wget のバージョンを確認してみましょう。

$ wget --version
GNU Wget 1.21.2 built on darwin21.1.0.

-cares +digest -gpgme +https +ipv6 +iri +large-file -metalink +nls
+ntlm +opie -psl +ssl/openssl

Wgetrc:
    /usr/local/etc/wgetrc (system)
Locale:
    /usr/local/Cellar/wget/1.21.2/share/locale
Compile:
    clang -DHAVE_CONFIG_H -DSYSTEM_WGETRC="/usr/local/etc/wgetrc"
    -DLOCALEDIR="/usr/local/Cellar/wget/1.21.2/share/locale" -I.
    -I../lib -I../lib -I/usr/local/opt/openssl@1.1/include -DNDEBUG -g
    -O2
Link:
    clang -DNDEBUG -g -O2 -lidn2 -L/usr/local/opt/openssl@1.1/lib -lssl
    -lcrypto -ldl -lz ftp-opie.o openssl.o http-ntlm.o ../lib/libgnu.a
    -liconv -lintl -Wl,-framework -Wl,CoreFoundation -lunistring

Copyright (C) 2015 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later
<http://www.gnu.org/licenses/gpl.html>.
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.

Originally written by Hrvoje Niksic <hniksic@xemacs.org>.
Please send bug reports and questions to <bug-wget@gnu.org>.

では、バージョンが確認できたら、 wget の動作を確認しましょう。

$ mkdir ~/tmp
$ cd

まずは、ホームディレクトリの直下に tmpという名前のディレクトリを作ります。

$ cd tmp

そして、 tmp で移動します。

$ wget https://example.com/
--2021-11-09 21:00:41--  https://example.com/
Resolving example.com (example.com)... 93.184.216.34, 2606:2800:220:1:248:1893:25c8:1946
Connecting to example.com (example.com)|93.184.216.34|:443... connected.
HTTP request sent, awaiting response... 200 OK
Length: 1256 (1.2K) [text/html]
Saving to: ‘index.html’

index.html   100%[========================>]   1.23K  --.-KB/s    in 0s

2021-11-09 21:00:41 (92.1 MB/s) - ‘index.html’ saved [1256/1256]

はい、こんな感じで index.html というファイルがダウンロードできました。

$ head index.html
<!doctype html>
<html>
<head>
    <title>Example Domain</title>

    <meta charset="utf-8" />
    <meta http-equiv="Content-type" content="text/html; charset=utf-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1" />
    <style type="text/css">
    body {

head コマンドで index.htmlファイルの先頭の方の内容を覗いてみると、確かに html ファイルのような内容であることが確認できました。

と言うわけで、今回は、macOS ユーザのための鉄板ツール Homebrew のインストール手順のご紹介でした。


Tags

#web-development#brew

Related Posts

macOS でログインシェルを zsh から bash に切り替える方法
macOS でログインシェルを zsh から bash に切り替える方法
1 min

クイックリンク

月額定額プランのご案内講師紹介受講生様の声よくあるご質問メルマガ

SNS