*

C言語でEV3開発(3)

公開日: : 最終更新日:2015/03/24 マインドストーム/EV3, 開発

どもです。
今回のエントリーの内容は、前回まででセットアップした環境で、実際にEV3上で動く実行ファイルをビルドするための、Eclipseの設定です。

(1). 新規プロジェクト作成
EV3上で実行するためのプロジェクトを作成します。
まずはEclipseを起動し、メニュー[ファイル]-[新規(N)]-[Cプロジェクト]と選択
します。
すると、新規作成プロジェクトのウィザードが開始されます。
まず、[Cプロジェクト]ダイアログでは、以下のような設定にします。
特にツールチェーンでは、「Cross GCC」を選択しているので注意してください。

cross_compile_project
次に、「プロジェクトの基本プロパティ」と「デプロイしたいプラットフォームの設定」が表示されますので、ここは任意の設定で問題ありません。
最後に、クロスコンパイラの設定になります。
ここでは、以下の画面のように設定してください。
cross_compiler_config

prefixに、クロスコンパイラの接頭辞である「arm-none-linux-gnueabi-」を、
pathにはコンパイラが格納されているパスを設定しています。
※人によっては環境が異なるかもしれませんが、その場合にはそれぞれの環境に一致した内容を入力をしてください。

これで、新規のプロジェクトが作成されます。

(2). バイナリのビルド実行
ビルドは、プロジェクト・エクスプローラ内で、ビルドしたいプロジェクトを選択、右クリックから「プロジェクトのビルド」を選択することで実行できます。
実行すると、「コンソール」タブに実行内容が表示されます。
cross_compile_build

コンソールタブ内の表示から、クロスコンパイラを使用してビルドとリンクが実行されていることがわかります。
次に、fileコマンドでファイルタイプを確認します。

cross_compile_file_command

画面上からもわかりますが、ARMの実行ファイルになっています。
これで、EV3上で動作するバイナリ(実行ファイル)が生成されました。

(3). EV3で実行…する前に
(2)で作成したバイナリをEV3上で動作させるために、生成したファイルを起動用のSDカードにコピーします。
これは、EV3をSDカードから起動させるようにしていることが前提になります。
あしからず。

今回は、EV3を起動・ログオンした直後のフォルダに実行ファイルを配置します。
起動用のSDカードをホストのVMに認識・マウントさせたら、以下のコマンドを実行します。

これで、実行ファイルがコピーされました。

(4). EV3で実行
単純に、EV3にログイン、実行ファイルを実行するだけですね。
その結果が、以下。
cross_compile_hello_ev3

以上、Eclipse上でのクロスコンパイルの環境構築と実行手順について記載しました。
これでEV3のC言語での開発は、だいぶ楽になるかと思います。

ではっ!

関連記事

eclipse-juno-logo

C言語でEV3開発(2)

どもです。 今回のエントリーの内容は、前回に引き続き「EV3の開発環境の構築」の追記です。

記事を読む

no image

C言語でEV3開発(12)-opOUTPUT_TIME_POWERコマンド

どもです。 今回のエントリーでは、これまた前回に引き続き、モーターを動かすためのコマンドについて書

記事を読む

no image

C言語でEV3開発(10)-opOUTPUT_CLEAR_COUNTコマンド

どもです。 前回のエントリーのラストで、「モーターを動かすコマンド」と書きましたが、今回紹介するコ

記事を読む

no image

C言語でEV3開発(9)-opOUTPUT_SPEEDコマンド

どもです。 今回のエントリーでは、前回に引き続きEV3のモーターを動かしていきます。 ただし、単

記事を読む

no image

Objective-CからC++コードを呼び出す

どもどもです。 今回は、突然ながらMacに関係する投稿です。 ソフト関係のことを勉強していて

記事を読む

no image

C言語でEV3開発(8)-opOUTPUT_POWERコマンド

どもです。 今回のエントリーでは、EV3でモーターを動かします。 なお、今回のエントリーでも

記事を読む

eclipse_4.3_kepler

elicpse/CDTでのgdbでのソースを追従したデバッグができない問題

どもです。 今回のエントリーは、Eclipse上でgdbを利用したデバッグ中に発生する問題について

記事を読む

no image

C言語でEV3開発(11)-opOUTPUT_STEP_POWERコマンド

どもです。 今回のエントリーでは、再びモーターを動かすためのコマンドについて書きます。 コマンド

記事を読む

no image

C言語でEV3開発(17)-コマンドによるTOPPERS/HRP2 EV3RT アプリケーションの制御(コントロール)

どもです。 今回は、TOPPERS/HRP2 EV3RT で作成したアプリをPC上から操作するため

記事を読む

eclipse-juno-logo

C言語でEV3開発(1)

どもです。 2回目の投稿。 本格的な投稿としては、初めての投稿になります。 内容は、LEG

記事を読む

Message

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

CAPTCHA


次のHTML タグと属性が使えます: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code class="" title="" data-url=""> <del datetime=""> <em> <i> <q cite=""> <strike> <strong> <pre class="" title="" data-url=""> <span class="" title="" data-url="">

no image
C言語でEV3開発(17)-コマンドによるTOPPERS/HRP2 EV3RT アプリケーションの制御(コントロール)

どもです。 今回は、TOPPERS/HRP2 EV3RT で作成した

toppers
C言語でEV3開発(16)-TOPPERS/HRP2 EV3 で Bluetooth割込み

どもです。 今回は、EV3 の環境をTOPPERS/HRP2 EV3

no image
C言語でEV3開発(15)-TOPPERS/HRP2 EV3 で PID制御

どもです。 今回のエントリーは、コレまでのエントリーから内容を変えて

eclipse_4.3_kepler
eclipse/CDTにおけるgdbでのデバッグ中に発生するpythonのエラー

どもです。 今回のエントリーは、Eclipse上でのデバッグの際に「

eclipse_4.3_kepler
elicpse/CDTでのgdbでのソースを追従したデバッグができない問題

どもです。 今回のエントリーは、Eclipse上でgdbを利用したデ

→もっと見る

PAGE TOP ↑