Apolloのビルド 4

昨日の続き。

$ bash apollo.sh build_cpu --local_resources 2048,1.0,1.0

でビルドしていたのですが、以下のようなエラーで終了。

System check passed. Build continue ...
[WARNING] System memory [1.95G] is lower than minimum required memory size [2.0G]. Apollo build could fail.
[WARNING] ESD CAN library supplied by ESD Electronics does not exist. If you need ESD CAN, please refer to third_party/can_card_library/esd_can/README.md.
Running build under CPU mode. No GPU is required to run the build.
[INFO] Start building, please wait ...

…

ERROR: (01-05 15:29:19.282) /apollo/modules/dreamview/backend/simulation_world/BUILD:5:1: C++ compilation of rule '//modules/dreamview/backend/simulation_world:simulation_world_service' failed (Exit 4).
gcc: internal compiler error: Killed (program cc1plus)
Please submit a full bug report,
with preprocessed source if appropriate.
See <file:///usr/share/doc/gcc-4.8/README.Bugs> for instructions.
INFO: (01-05 15:29:28.500) Elapsed time: 4699.585s, Critical Path: 745.37s
============================
[ERROR] Build failed!
[INFO] Took 4885 seconds
============================

ググってみると、メモリ不足が原因という記載が見つかります。Dockerの設定を見てみると2.0GiBとなってます。 よくよく、ビルドのメッセージを見ていくと、2GB以上のメモリが必要とあります。 Dockerのメモリ設定を3.0GiBに変更して、再トライします。 なかなか進みませんが、今日はここまで。

Apolloのビルド 3

昨日の続き。

以下コマンドを再度実施。

$ bash docker/scripts/dev_start.sh

すると、以下メッセージ。

[\e[34m\e[1mINFO\e[0m] Start pulling docker image apolloauto/apollo:dev-x86_64-20181210_1500 ...
Warning: failed to get default registry endpoint from daemon (Cannot connect to the Docker daemon at unix:///var/run/docker.sock. Is the docker daemon running?). Using system default: https://index.docker.io/v1/
Cannot connect to the Docker daemon at unix:///var/run/docker.sock. Is the docker daemon running?
[ERROR] Failed to pull docker image.

Dockerが立ち上がっていませんでした。そこで、Dockerを起動して、再度トライする。

$ bash docker/scripts/dev_start.sh
[\e[34m\e[1mINFO\e[0m] Start pulling docker image apolloauto/apollo:dev-x86_64-20181210_1500 ...
dev-x86_64-20181210_1500: Pulling from apolloauto/apollo
…
[\e[32m\e[1m OK \e[0m] Enjoy!

しばらくダウンロードが続いたあと、「Enjoy!」と出たので問題なさそう。 「[\e[32m\e[1m OK \e[0m] 」とかは、色を変えてOKと表示したかったのでしょうが、ターミナルソフトが合っていないため、このように出ているのだと思います。

ビルド手順に従って、進めていきます。

$ bash docker/scripts/dev_into.sh

Docker imageに入ったようで、ターミナルの表示がちょっと変わりました。 続けて、Build modulesです。Noteに従って、Macbook Pro 2012なので、GPUなし、マシンパワー低いの設定で実行。

$ bash apollo.sh build_cpu --local_resources 2048,1.0,1.0

現在、裏で何か頑張っています。続きは明日。

Apolloのビルド 2

昨日に続いて、Apolloのビルドにトライしていきます。

Git LFSインストール前は上手くいかなかった、以下コマンドを試す。

$ bash docker/scripts/dev_start.sh

すると、以下メッセージが。

You need to install and run git-lfs when working with apollo.
New versions of git manage it automotically, but old versions may
need to run `git lfs clone` and `git lfs pull`.

とりあえず、「git lfs clone」を打ってみる。

$ git lfs clone
WARNING: 'git lfs clone' is deprecated and will not be updated
          with new flags from 'git clone'

'git clone' has been updated in upstream Git to have comparable
speeds to 'git lfs clone'.
fatal: You must specify a repository to clone.
…

「git clone」済みなので、動かないのか。それともcloneなので、再度URLを指定する必要があるのか。 とりあえず、「git lfs pull」を打ったら色々とダウンロードが始まった。 続きはまた明日。

Apolloのビルド

ビルド方法のページがあったので、順に従って進めていきます。

dockerが必要となるみたいです。インストール済みか確認する。

$ docker --version
Docker version 18.03.1-ce, build 9ee9f40

以前インストールした事があったよう。

続いて、以下コマンドを動かすように指示があったので、動かしてみる。

$ bash docker/scripts/dev_start.sh

ライセンス確認の後で、以下メッセージがでた。

git-lfs is required to work with apollo.
Check https://git-lfs.github.com for more information.

Git LFS(Git Large File Storage)という大きなバイナリを保存する為の拡張を取り入れる必要があるらしい。 調べて見ると、macOSの場合、brewでインストールできるようになっている。

$ brew install git-lfs

特に問題なくインストールできた。続きはまた明日。

Apolloをダウンロード

Self-Driving Fundamentals: Featuring Apollo | Udacityでは、Apolloという自動運転ソフトウェアをお題に話が進んでいくようです。 とりあえず、ソースコードを入手します。

$ git clone https://github.com/ApolloAuto/apollo.git

Ubuntuが推奨環境のようです。 主に使っている環境がMacOSなので、ビルドできるか怪しいです。 一応、ビルドにトライしてみます。

自動運転の学習始めます

自動運転の技術を身につけたく、Self-Driving Fundamentals: Featuring Apollo | Udacityをやってみます。

過去に、Self Driving Car Engineer | Udacityという自動運転のコースを受講し、最後までやれてはいるのですが、間があいたのとプロジェクトをただただ取り組んだだけで、手の内化が足りていないと感じているので、理屈と実践をがっちりやっていきたいところ。

eu.udacity.com

eu.udacity.com

CodeRetreat @ 名古屋ギークバーに参加

CodeRetreat @ 名古屋ギークバーに参加して来ました。

Coderetreat は、プログラマのための練習、学習のためのイベントです。同じ課題をペアプロで実装しながら、プログラミング、設計、テストなどの技術を学びます。

45分1セッションのペアプログラミングを5-6セットくらい行います。

との事で、日中をプログラミング漬けしてきました。同じ課題を実装かつ、各セッションで1から書いて行くのですが、ペアの相手やファシリテーターから提案されるチャレンジの影響で飽きることなく課題に取り組めました。

テストコードが無い状態ではありますが、一応課題を実装できたのが良かったです。

無料で参加できたのですが、スポンサーさまのお蔭で美味しいご飯をいただけるのも嬉しかったです。お腹いっぱいになりました。(中には昼間からビールを飲んでいる方も!)

次は11月に開催予定だそうです。日程が合えば参加しようと思っています。 スポンサーの方、参加した方ありがとうございました!

イベントページ

スポンサーさま