*

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_oxygen

Eclipse/CrossCompile環境でプロジェクトをクリーンできない

どもです。 今回は、Eclipseでクロスコンパイル環境を作成した場合、を実行すると「指定されたフ

記事を読む

raspberry-pi

QtでRaspberryPi/GUI開発(7):pigpioを使用したチャタリング対策の問題

どもです。 前回のエントリーで、pigpioを使用したチャタリング対策について記載しました。 今

記事を読む

Arduino_Logo

ホールセンサーの種類と使い方(割込み編)

どもです。 前回に引き続き、今回もホールセンサーについてです。 1.前回からの違い 前回の

記事を読む

source_trail_eye_catch

Sourcetrailを試してみました

どもです。 つい最近、ソースコードの解析に役に立ちそうなツールを見つけたので、ここで少し紹介をしま

記事を読む

RasPi_Qt

QtでRaspberryPi/GUI開発(12)-gpioの状態をGUIに反映する

どもです。 今回は、gpioピンの状態(HIGH/LOW)の変化を画面上に即座に反映する方法につい

記事を読む

toppers

C言語でEV3開発(22)-ロギング機能

どもです。 前回は、モーターの出力を制御する方法について記載しました。その際に、モータ/車体が期待

記事を読む

no image

Windows/EclipseでRaspberryPiのクロス環境を構築してみた

どもです。 今回は、Windows/EclipseでRaspberry Piのクロス環境を構築した

記事を読む

MY_MFC_LOGO

MFCプログラミング(2):コピー機能の実装

どもです。 前回に引き続き、今回もMFCネタです。 内容は、MFCでの「クリップボードへのデータ

記事を読む

eclipse_4.3_kepler

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

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

記事を読む

think_about_utest

VisualStudioで実行した単体テストの結果の出力(1)-ファイルへの出力

どもです。 最近、VisualStudio/C#でよく開発しています。 その際に、当然ですが

記事を読む

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="">

think_about_utest
VisualStudioで実行した単体テストの結果の出力(3)-テスト実行からレポート生成までをツールで自動化

どもです。 前々回、前回と、VisualStudio/C#での単

think_about_utest
VisualStudioで実行した単体テストの結果の出力(2)-出力ファイルの読める化

どもです。 前回の続きです。 前回は、VisualStud

think_about_utest
VisualStudioで実行した単体テストの結果の出力(1)-ファイルへの出力

どもです。 最近、VisualStudio/C#でよく開発してい

think_about_utest
単体テストの効率化を考える(6)-スタブの自動生成ツール

どもです。 「単体テストの効率化について考える」の6回目です。

think_about_utest
単体テストの効率化を考える(5)-スタブの自動生成への入力

どもです。 「単体テストの効率化について考える」の5回目です。

→もっと見る

PAGE TOP ↑