ETロボコン2020 etrobo環境(評価版)をインストールしてみる

## 前置き
今年からシミュレーション環境になったらしいので
手順は公式そのままで、特に目新しいとこはないです

## 環境
windows10 Pro ver 1909

## 参考
https://github.com/ETrobocon/etrobo![ETロボコン2020環境4.PNG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/83177/a17826bb-d232-661d-164c-3861156ad4d3.png)

https://github.com/ETrobocon/etrobo/wiki

## WSL1のインストール
### WSL1 (Windows Services for Linux)とは
Windows 10からLinuxを利用するための仕組み
WSL2(Virtual Machine Platform)というものもあるが、ETロボコンシミュレータ環境は、現状WSL2上では動作しない。

※WSL1とWSL2の違い
WSL1...Windows APIをLinux APIでラップしたもの
WSL2...完全な仮想環境、Windowsに全く依存しないでLinuxを起動
https://blog.goo.ne.jp/takuminews/e/d89a8c8151fbc276333fe4ba2f6680f2

### 手順
https://www.atmarkit.co.jp/ait/articles/1903/18/news031.html

[コントロールパネル] 
=> [プログラム] ![ETロボコン2020環境1.PNG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/83177/079d2ebc-99a4-1c0a-b8f4-0358b34fc5a9.png)

[プログラムと機能] 
=> [Windowsの機能の有効化または無効化]
![ETロボコン2020環境2.PNG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/83177/768fe0cb-9710-a8e8-a3c4-5614ec776031.png)

[Windows Subsystem for Linux」にチェック
![ETロボコン2020環境3.PNG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/83177/822da7a4-82e6-6d89-1def-5aa6b41bc884.png)

再起動が要求されるので、再起動を実行
![ETロボコン2020環境4.PNG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/83177/ecac23ff-484d-3bfa-3404-9463760439fb.png)

## WSL向けUbuntu 18.04のインストール
### 手順
[Microsoft Store]を開く
=> "WSL"で検索
=> [Ubuntu 18.04 LTS]をクリック
![ETロボコン2020環境5.PNG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/83177/ca44ecb0-f264-0d62-a025-fafc34cafa58.png)


入手をクリック
![ETロボコン2020環境6.PNG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/83177/e4b2a338-a8e7-7aff-1591-52971d493a00.png)

インストール後、Ubuntuを起動する
![ETロボコン2020環境7.PNG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/83177/a0f8c4a5-c522-edc8-3726-96241d6fce77.png)

![ETロボコン2020環境8.PNG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/83177/cd96a73c-7c58-3eff-2df8-81dc224ec217.png)

ユーザ名とパスワードを入力する。
windowsと同じである必要はない。
![ETロボコン2020環境10.PNG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/83177/17d86aa2-0320-733e-bbf3-530274bb493e.png)

## Ubuntuの設定
### APTパッケージアーカイブを国内サイトに変更
https://qiita.com/serlys/items/30f1b43deba257033342#apt%E3%83%91%E3%83%83%E3%82%B1%E3%83%BC%E3%82%B8%E3%82%A2%E3%83%BC%E3%82%AB%E3%82%A4%E3%83%96%E3%82%92%E5%9B%BD%E5%86%85%E3%82%B5%E3%82%A4%E3%83%88%E3%81%AB%E5%A4%89%E6%9B%B4

>Ubuntuのパッケージアーカイブリポジトリは、既定でarchive.ubuntu.comおよびsecurity.ubuntu.comに存在する。ただこのリポジトリをホストしているサイトは英国に存在し、日本からアクセスするとかなり遅い。そこで日本国内のミラーサーバであるjp.archive.ubuntu.comに変更する

archive.ubuntu.comを、jp.archive.ubuntu.com という文字列に置き換え、
元のファイルは sources.list.bakという名前でバックアップ

```bash
$ sudo sed -i.bak 's/\/archive\.ubuntu/\/jp\.archive\.ubuntu/' /etc/apt/sources.list
```

sedコマンド
-i拡張子
ファイルを直接編集し、指定した拡張子でバックアップする
（※「-i」と「拡張子」の間には空白を入れない）

's/\/archive\.ubuntu/\/jp\.archive\.ubuntu/' ？
=> s/置換対象文字列/置換後文字列/
-> 置換対象文字列... /archive.ubuntu
-> 置換後文字列 ... /jp.archive.ubuntu

※置換対象文字列,置換後文字列内で、スラッシュを使いたい場合は、
[s/置換対象文字列/置換後文字列/]で仕切ってあるスラッシュとは別にするため、
バックスラッシュ(\)でエスケープ
※同じく、ピリオド(.)も、正規表現では任意の１文字を表すので、文字としてピリオドを
使いたいときは、バックスラッシュ(\)でエスケープ

【 sed 】コマンド（基礎編その4）
https://www.atmarkit.co.jp/ait/articles/1610/17/news015.html
sed コマンドの用法
https://qiita.com/b4b4r07/items/d26e84554874dd156b82

### パッケージを更新
```bash
$ sudo apt update
$ sudo apt upgrade
```

### コマンドプロンプトからUbuntuターミナルの起動を起動する
```bash
$ bash
```
OR

```bash
$ wsl
```

## VSCodeのインストール
インストール済み

## VSCodeからWSL上のフォルダを開く
以下に従う
https://github.com/ETrobocon/etrobo/wiki/sim_win_wsl_vscode


## etroboパッケージのインストール

コマンドプロンプトから以下を実行

```bash
> cd Desktop & echo wsl if [ ! -f ~/startetrobo ]; then wget https://raw.githubusercontent.com/ETrobocon/etrobo/master/scripts/startetrobo -O ~/startetrobo; chmod +x ~/startetrobo; fi; ~/startetrobo > "Start ETrobo.cmd"
```

デスクトップにStart ETrobo.cmdが作成されるので、それをダブルクリックで実行
![ETロボコン2020環境14.PNG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/83177/7896dd06-382e-d20e-588e-e6f26568cd3a.png)

途中でubuntuで作成したユーザ名に対するパスワードを入力
![ETロボコン2020環境15.PNG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/83177/e00b8a00-c40d-8527-fbd4-ab893ffc986b.png)

インストール完了後、VSCodeが起動する
![ETロボコン2020環境16.PNG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/83177/c2d02fc5-4195-836a-42de-0be2b11a5545.png)

## 動作確認
> ターミナルを開いて（Windows:Ctrl+@・Mac/Linux:Ctrl+Shift+@）、とりあえず make sample と叩いてください。未来が見えます。
https://github.com/ETrobocon/etrobo#%E5%8B%95%E4%BD%9C%E7%A2%BA%E8%AA%8D%E4%B8%BB%E3%81%AA%E3%82%B3%E3%83%9E%E3%83%B3%E3%83%89%E3%81%AE%E8%AA%AC%E6%98%8E

![ETロボコン2020環境17.PNG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/83177/623d1c4a-1395-d92a-c7af-8219d03c75ad.png)

スペースキーor(Enter?)でライントレーススタート。
![robo.gif](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/83177/bedc35e9-9c6b-a4d0-552b-571c9346aaa6.gif)


### 動作環境
CPU: i7-6600U
メモリ: 16GB
GPU: Intel HD Graphics 520

動作はしますが、ファンが常に回っている状態
![ETロボコン2020環境18.PNG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/83177/6eca1d74-a397-6c20-d2a8-b31dbefaa0e5.png)


## うまく動作しないとき
etrobo環境をいったん削除し、再インストールする
VSCodeを閉じ、ubuntu起動、以下を実行

```bash
$ ./startetrobo clean
```

デスクトップのStart ETrobo.cmdをダブルクリック