Elixir本体ビルド①：Windowsにはバンドルされていないmakeをcygwinでインストール

[fukuoka.ex](https://fukuokaex.connpass.com/)のpiacereです
ご覧いただいて、ありがとうございます :bow:

[tokyo.exと合同で開催している「Elixir本体ソースコード読み込み会」](https://fukuokaex.connpass.com/event/148581/)の中で、Windowsには、makeが標準バンドルされていないことを忘れていたため、そのままではElixir本体ソースコードをビルドできないことに気付き、急遽コラムとしてまとめました

ちなみに会の様子は、こんな感じで、tokyo.exが東京会場でのオフライン参加、fukuoka.exがZoomでのリモート参加です（冒頭、tokyo.ex会場の様子も映し出されました）
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/155423/1a1a964a-c650-91f5-16ef-dd8e7e62e71d.png)

# 本コラムの検証環境、事前構築のコマンド

本コラムは、以下環境で検証しています（Windowsで実施しています）

- Windows 10
- Elixir 1.9.1　　　　 ※<b>[最新版のインストール手順はコチラ](https://qiita.com/piacere_ex/items/6714e1440e3f25fb46a1#%E4%BA%8B%E5%89%8D%E6%BA%96%E5%82%99elixir%E3%81%AE%E3%82%A4%E3%83%B3%E3%82%B9%E3%83%88%E3%83%BC%E3%83%AB)</b>

なお、Elixir本体ソースコードは、下記から、あらかじめcloneもしくはダウンロードしておいてください
https://github.com/elixir-lang/elixir

# cygwinをインストールする

Elixir本体をビルドするのに、Windows標準では入っていないmakeをまず導入する必要があります

色々なやり方がありますが、一番迷わないと思われる「cygwin」という、WindowsでUNIX環境を構築するツールを使って解説します

まず、cygwinを下記からダウンロードします
https://www.cygwin.com/
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/155423/66f6caeb-0e1e-6612-0072-929ac7dd2319.png)

[「setup-x86.exe」](https://cygwin.com/setup-x86_64.exe)をクリックすると、ダウンロード開始します

ダウンロードが終わり、インストーラを起動すると、以下のような画面が出てきます

基本、特に何もせず、「次へ」ボタンを押下していけばOKですが、途中、操作が必要なところだけ、解説を入れます
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/155423/01e7b227-4cc3-0a1b-9a00-c2f1bdab0c99.png)
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/155423/ba0260cc-6a83-6847-8e86-01bba8ef313b.png)
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/155423/050cb413-ad14-dbcb-47c4-83efe0fe853e.png)
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/155423/2b2afb02-7410-a8d6-2259-d1051468d938.png)
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/155423/f796eabb-d456-1467-304e-1e4ec9071a5e.png)

下記画面で、リストの中から、適当にクリックして、「次へ」ボタンを押下してください
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/155423/101724b4-f1d1-4d4b-4e28-ac3ff73e7bbb.png)
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/155423/f76793ab-bf3a-26ea-a1c1-88176e0c0106.png)
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/155423/de8fbcf2-9bdb-8e31-c9db-77dcd7441015.png)
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/155423/d1431897-46ea-c353-de96-d762490753db.png)
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/155423/bf85a00e-8804-5500-fa20-dd77383de23a.png)

あとは数分待てば、インストールが完了します

# cygwinコンソールの起動、Elixir本体ソースコードフォルダへの移動

デスクトップにアイコンができるので、起動すると、cygwinコンソールが起動します

Windowsのフォルダ移動については、以下のように、ドライブ指定が「/cygdrive」配下にドライブレターで可能です

```
$ cd /cygdrive/c
```

続けて、ドライブ配下のElixir本体ソースコードをcloneしたフォルダまでcdします

```
$ cd 【Elixirをcloneしたフォルダ】
```

Elixir本体ソースコードフォルダ配下で、makeを実行すると、ビルドがスタートします

```
$ make
```

下記のように、src/elixir*がRecompileされる画面が出てくれば、make開始は成功です
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/155423/08fec153-5d28-0c02-fbf9-965b512020a5.png)

# 終わり

ひとまず、Elixir本体ソースコードのビルド環境はできました

[次回は、Elixir本体をハック](https://qiita.com/piacerex/items/5c38bce0e3abdc1428bf)してみます

# p.s.「いいね」よろしくお願いします

ページ左上の ![image.png](https://qiita-image-store.s3.amazonaws.com/0/155423/4d515047-cc48-382e-c2b1-3ad0cc50dbbf.png) や ![image.png](https://qiita-image-store.s3.amazonaws.com/0/155423/a4e3da58-70a3-4197-95a2-6a6906650d01.png) のクリックを、どうぞよろしくお願いします:bow:
ここの数字が増えると、書き手としては「ウケている」という感覚が得られ、連載を更に進化させていくモチベーションになりますので、もっとElixirネタを見たいというあなた、私達と一緒に盛り上げてください！:tada: