Windows 10環境で、goのCgoパッケージを用いたCLIツールtogooを使う際にコンパイラ周りでつまづいたので、メモしておく。
cgo - The Go Programming Language
[遭遇したエラー]
ふと、ちょっとしたタスク管理をしようと思いついて、せっかくだからとkakkuさんのtogooを使ってみることにした。OSはWindows 10。golangはインストール済み。
READMEに書かれているインストール手順に従って、go get -u github.com/kakakakakku/togooのコマンドを実行したところ、exec: "gcc": executable file not found in %PATH%と言うエラーに遭遇した。

gccコマンドがインストールされていない、もしくは環境変数PATHに設定されているディレクトリの中にgccコマンドがない、ということになる。
念のため、gccコマンドを実行してみると、bash: gcc: command not foundというエラーが出た。

最初のエラーメッセージexec: "gcc": executable file not found in %PATH%で検索すると、ぴったりのStackoverflowの質問が見つかった。
曰く、Windows用のCコンパイラであるTDM-GCCをインストールしろ、と。
[gccのインストール手順]
というわけで早速インストールに取り掛かる。
64bit版のOSを利用しているので、該当する.exeファイルをダウンロードして、ダブルクリックすると、ウィザードが起動する。今回はバージョン5.1.0を利用した。

何も考えずに「Create」をクリックする。

なぜか32bitバージョンを選ぶことができるが、OSが64bitなのでそちらを選択して「 Next >」をクリック。

ライセンスの条文が表示されるので、ざっと目を通して問題がないことを確認し、「Next >」をクリック。

インストール先のディレクトリを変更できるらしいが、デフォルトのままにして「Next >」をクリック。

ファイルのダウンロードミラーサイトを選べるが面倒なのでここもデフォルトのまま変更せずに「Next >」をクリック。

インストールするコンポーネントを聞かれるが、ここもデフォルトから変更なし。「Install」をクリックしてしばらく待つ。

各種ファイルが追加されていく様子。

無事に全ての作業が完了した模様。
詳細の下から4行目のところに、「Adding 'C:¥TDM-GCC-64¥bin' to PATH」と表示されているので、gccがPATHに追加されたことだろう。
「Next >」をクリックする。

READMEを読め、と言われるがチェックを外して「Finish」をクリック。これで全てのインストール作業は完了。
念のため、改めてgccコマンドを実行してみる。

引数が足りないのでfatal errorが発生してしまったが、gccがPATHへ追加されていることは確認できた。
[togooをインストールしてタスク管理]
さて、ここで当初のgo getコマンドを再度実行すると、今度はエラーなくコマンドが終了した。

READMEに従って、データベースの初期化処理を実行する。こちらもエラーなし。

徒然にタスクを追加してみる。

追加したタスクを完了にすると、listコマンドを実行した時に表示されなくなる。-aオプションをつけると完了したタスクも表示できる。

Web上にデータを送信したりはしないので、TrelloなどのSaaSとは違ってインストールしたPCを触っていないとタスクを見ることができない。しかし、プライベートな開発タスクは家で集中して考える、仕事のことは職場で集中して考える、といった具合にうまくその場でやるタスクに集中できる、ような気もする。
その他Togooの使い方についてはご本人が色々書かれているのでそちらを。
[うまく行かないタスク管理]
……とこんな具合で、こまごましたタスク管理やっていくぞ!と思った訳だが、その週末に右肩を怪我してしまって、2週間程、タスク管理ツールを使うほどでもない分量でほどほどに個人開発や仕事を進めていた。
ほどほどに進めていたが、右腕を十分に動かして激しい運動はできないものの、キーボードを打つのにそれ程支障はないので、ちょっとずつタスクを増やしていったところ、やはり何らかの形でタスクを管理する必要性を感じるようになった。
そんな中で、こちらのブログ記事を読んで、毎日その日やるべきことを整理していくのにtogooを使えるのでは?と思った。
Slackだけでなんとかタスク管理できるかもしれないけれど、それをさらに分解した細かいタスクまで書き出すのはちょっとな、と思ったので、うまくtogooを活用していきたい。
[まとめ]
・togooで日々のタスク管理をやっていくぞ
今日のブログ執筆BGMはこちら。