競プロを始めようかなと思い、APG4bに取り組んでいたのですが、そろそろブラウザのエディタがきつくなってきたので普段使っているAtomで競プロ環境構築しました。
目標
- gcc環境構築、Atom上でコンパイルと実行を行う
-
#include <bits/stdc++.h>
を使えるようにする - linterをいれる
環境
- macOS Catalina(10.15.3)
- Homebrewが入っている前提です。
- Atom
構築手順
gcc環境
今回は、APG4bでも出てくる#include \<bits/stdc++.h>
を使うため、gccをインストールします。
詳しくはこちらにまとまっています。
1. gccをインストール
Homebrewを使ってコンパイラをインストールします。
$ brew install gcc
2. pathを通す
macには今
- /usr/bin/g++ (デフォルト)
- /usr/local/bin/g++-9 (今インストールした方)
の2つが存在していて、このままだと上の方が呼び出されます。
$ which g++
/usr/bin/g++
これをgccに変えてあげるためpathを通します。
$ ln -s /usr/local/bin/g++-9 /usr/local/bin/g++
これでシンボリックリンクを作成し、新しいターミナルの画面でもう一度確認すると
$ which g++
/usr/local/bin/g++
となります。
Atomの設定
1. パッケージのインストール
- gpp-compiler
- linter-gcc (構文解析ツール)
この二つをpackage管理画面からインストール。
2. gcc-compilerの設定
「GCC Executable Path」の欄に usr/local/bin/g++
と記入。
これでF5キーを押すとg++でコンパイルしてくれるようになる。
3. linter-gccの設定
同じように「GCC Executable Path」の欄に usr/local/bin/g++
と記入。
いい感じに構文解析して、エラーを出してくれる。
このままだとエラーが出てしまうので
「C++flag」のところに-fsyntax-only
を追加。
(構文解析エラーのみチェックというオプションです。)
最後に
これで最低限の環境は整いましたが適宜アップデートしていきたいと思います。
参考
https://qiita.com/EngTks/items/ffa2a7b4d264e7a052c6
https://qiita.com/mendako_muscat/items/57e54c8dd97436b0ed06
https://www.smartbowwow.com/2018/08/atomclinter-gccatom-beutify.html