(toppers-users 4608) Re: mruby on EV3RT + TECS をMacで環境構築する際のmake depend時のエラーについて

aqua055 @ gmail.com aqua055 @ gmail.com
2016年 9月 21日 (水) 02:44:14 JST


安積先生;

「mruby-on-ev3rt+tecs_packageビルド手順書」を書かれたご本人から、早々にコメント
頂き光栄です。

書かれていたように
/hr-tecs/target/ev3_gcc/drivers/linux/include/linux/compiler-gcc.h
を修正することで、
make depend 時に

Generating Makefile.depend.
と表示されて終了するようになりました。

さらに、「make depend をする必要はない」と重要なアドバイスも頂き、ありがとう
ございました。

早速、Qiita の記事も修正しました。
mruby-on-ev3rt+tecs の情報がより共有されるよう願っています。

これから、(本来の目的である)mrubyでのプログラミングを楽しみたいと思います。

柴田 義之

> 2016/09/20 12:28、Takuya Azumi <takuya @ sys.es.osaka-u.ac.jp> のメール:
> 
> 柴田様
> 
> 大阪大学の安積です。
> 
> ご報告ありがとうございます。
> 
> ・原因
> EV3RTのデバイスドライバがLinuxベースで作成しており、
> デバイスドライバが参照してるLinux用のヘッダファイルと、
> リアルタイムOS(TOPPERS/HRP2)が提供しているinlineが二重定義になっている。
> 
> ・対処方法
> hrp2/target/ev3_gcc/drivers/linux/include/linux/compiler-gcc.hの47行目をコメントアウトすれば警告は抑制できるかと思います。
> // # define inline  inline  __attribute__((always_inline))
> 
> ・補足
> make depend はC言語のヘッダファイルの依存関係を自動生成してくれるプログラムです。
> C言語プログラムを修正した場合に、そのファイルを読み込んでいるファイルもコンパイル対象にするなどで利用します。
> ※TOPPERS/ASP3(第3世代カーネル)からコンパイル時に依存関係を生成するようになっていますので、make dependはなくなっています。
> 
> mrubyのみをプログラミングするなど、C言語を修正しない場合は、make dependを実行する必要ありませんね。
> 次のバージョンでは、マニュアルのmake dependの記述を削除することで対応いたします。
> 
> Qiitaの情報はMacユーザに、とても有益ですね。
> 
> よろしくお願いいたします。
> 
> 2016年9月20日 3:03 aqua055 @ gmail.com <aqua055 @ gmail.com>:
> 初めまして。柴田義之と申します。
> 趣味でプログラミングをしているものです。
> 
> mruby on EV3RT + TECS で EV3を動かそうと環境構築を Macでしてみました。
> 
> サンプルプログラムを動かすところまでほぼ出来たのですが、一点 SDでの
> make depend がうまくいきませんでした。
> 
> 自分の行った Macでの環境構築法の細かな点、およびバージョン等については
>  Qiita に投稿しました。
> ・Mindstorms EV3をmrubyで動かす方法(Macで環境構築編) - Qiita
> http://qiita.com/noanoa07/items/dd5c5230b577a3622f08
> 
> この記事の 6A-3 ビルド:make depend
> の箇所なのですが、
> make depend 時のエラーログは Gistに貼りました。
> ・mruby-on-ev3rt+tecs のSDでのコンパイルのエラーログ(Mac)- Gist
> https://gist.github.com/noanoa07/e2adea0edf4380fbec05decb5079bb0b
> 
> 何か回避方法はあるでしょうか?
> 
> Windows での動作保証しかしていない、と言われればその通りなのですが、
> makefile を見ると Macでの環境構築にも考慮されているようです。
> 
> ETロボコンの公式環境やアフレルの教材となり、使用者も増えている
> と思いますし、Macでも使えるとより幅広く普及すると思います。
> 
> 何かアドバイスあればよろしくお願いします。
> 
> 
> 柴田義之
> 
>