*

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言語での開発は、だいぶ楽になるかと思います。

ではっ!

関連記事

iot_at_home_eye_catch

IoT開発(14)
ESP-WROOM-02の稼働時間を延ばす工夫をしてみる

どもです。この記事は、以下の続きです。 IoT開発(4)-ESP-WROOM-02を電池で駆動

記事を読む

eclipse-juno-logo

C言語でEV3開発(1)

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

記事を読む

toppers

C言語でEV3開発(20)-超音波センサと安全状態

どもです。 前回は、BluetoothでPCとEv3を接続してコマンドの送受信について書きました。

記事を読む

image027

気圧センサを使ってみた-RaspberryPi/pigpioでMPL115A1

どもです。 前回は、DHT11をRaspberryPi/pigpioで使用、温度を測定してみました

記事を読む

MindStormControl_SprachScreen

EV3開発サポートツール(2)-C#のユーザーコントロール開発(2つ目)

どもです。 前回に引き続き、今回もC#/WPFでの独自UI(ユーザーコントロール)の作成についての

記事を読む

RasPi_Qt

Rasbianの新しいバージョンが出たので、クロス環境を更新してみた。(さらにその後)

どもです。 前回の投稿から、かなり時間が空いてしまいましたが、今回は前回の続きとして、「QtC

記事を読む

MY_MFC_LOGO

MFCプログラミング(3):クリップボードへのデータ形式の登録

どもです。 今回も、クリップボードネタです。 1.背景(簡単に) アプリケーションにコピー

記事を読む

iot_at_home_eye_catch

IoT開発(3)-ESP-WROOM-02でデータを送信

どもです。 この記事は、IoT開発(1)-ESP-WROOM-02のセットアップ、IoT開発(

記事を読む

iot_raspberrypi_gateway_001_eye_catch

IoT開発(7)
RaspberryPiをIoTゲートウェイにする(II)
VM上の開発環境にWEBサーバーをインストール

どもです。 このエントリは、前回の続きです。 今回は、前回のエントリで作成したVM上のRaspb

記事を読む

iot_at_home_eye_catch

IoT開発(11)
ESP-WROOM-02を長時間駆動させた

どもです。この記事は、下記の記事の続き、「測定可能な期間」の結果発表です。IoT開発(5) ESP-

記事を読む

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

arduino_relay_switch_002_ae_g5v_drv_eye_catch
Arduinoでリレースイッチ(2)-AE-G5V-DRV

どもです。 前回の記事では、「フォトカプラリレー」を使用したLチ

tlp222af_001_eye_catch
Arduinoでリレースイッチ(1)-TLP222AF

どもです。 つい先日、やっとのことでリレースイッチを手に入れるこ

c_sharp_eye_catch
外部からMariaDbにアクセスする(2)-C#からMariaDbにアクセスする。

どもです。 前回のエントリで、外部からMariaDbにアクセスす

c_sharp_eye_catch
外部からMariaDbにアクセスする(1)-データベースの設定

どもです。 今回は、Linux上のMariaDbにWindows

think_about_utest
middle_unit
最小…よりも(ほんの)少し大きいテストフレームワーク

どもです。 今回は、単体テストのフレームワークについて書きます。

→もっと見る

PAGE TOP ↑