M1 MacでC++のGCC環境構築した時のメモ
はじめに
競プロ始めようかなと思ったのですが、言語選択で何にしようか若干悩みました。
普段慣れているKotlinやJavaScriptでもいいかなと思ったのですが、折角ならC++でやってみるかと思いました。
(サンプルコードもたくさん読めますしね)
ということで、C++の環境構築をしたので、そのメモです。
C++にはGCCやClangというコンパイルする環境があり、Macの標準ではClangが搭載されているようです。
GCCでは、stdc++.hをincludeすればC++の標準ライブラリを色々使えるので、競プロで使うにはいいという記事をたくさん目にしたので、自分もGCC環境構築していこうと思います。
環境構築
GCCインストール
homebrewを使って以下でやりました。
$ brew install gcc
以下のコマンドで、GCCが正しくインストールされているかどうかを確認するとともに、GCCのバージョンを確認します。
$ brew info gcc
これにより、インストールされているGCCのバージョンとその他の詳細情報が表示されます。
GCCが呼び出されるようにする
GCCインストールしただけだと、clangの方が呼び出される状態になっています。
なので、gccとg++のシンボリックリンクを作成します。
まずは、GCCがインストールされたパスの確認です。
M1 Macでは、/opt/homebrew/bin/
にインストールされるようです。
以下で確認してみます。パスが表示されていればOKです。
ls /opt/homebrew/bin/gcc-*
確認できたら、以下のコマンドを使用してgccとg++のシンボリックリンクを作成します。
ただし、{version}は確認したGCCのバージョンに置き換えてください(例だと13になっています)。
ln -s /opt/homebrew/bin/gcc-13 /usr/local/bin/gcc ln -s /opt/homebrew/bin/g++-13 /usr/local/bin/g++
これらのコマンドにより、/usr/local/bin/ ディレクトリ内に gcc と g++ の名前でシンボリックリンクを作成されます。それにより、gcc や g++ を実行したときに homebrew でインストールした GCC が使われるようになります。
g++の呼び出し先を確認してみましょう。
which g++
/usr/local/bin/g++
となっていればOKです。