マイコン&FPGA開発の流れと開発ツール ―― 組み込みシステム開発の基礎知識(後編)

内座 浩文,大池弘泰

マイコンで動作させるソフトウェアの開発や,FPGAに実装する回路の設計では,さまざまなツールを利用します.前編に引き続き,組み込みシステムの開発の流れと,各工程で利用する開発ツールについて整理します. (編集部)

5.製造工程とマイコン開発ツール

 コーディング,コンパイル/アセンブル,リンクの流れと各ツールが入出力するファイルの関係を図12に示します.



図12 コンパイルからリンクの流れ
多くの設計では,ソース・コードは複数のファイルに分けてコーディングし,最終的には一つの実行形式ファイルを得る.


●makeコマンドとMakefileの利用

 多くの設計では,ソース・コードは複数のファイルに分けてコーディングし,最終的に一つの実行形式ファイルを得ます.このとき,C言語コンパイラを使ってコンパイルし,リンカを使ってリンクを行いますが,ソース・ファイルごとに適切な順番で実行しなければなりません.また,コンパイラやリンカのオプションも適切に設定する必要があります.これらの作業を毎回手作業で行うと,手間がかかる上にミスも発生しやすくなります.

 そこで,コンパイラやリンカを実行する順番やオプションの設定などの指示を記述したMakefileを作成します.Makefileの例をリスト2に示します.

リスト2 Makefileの例

 


 Makefileに記述された指示を動作させる際にはmakeというツールを使用します.

 makeはホスト・コンピュータで動作するOSのコマンド・ライン・インターフェースで使用します.例えばGNUツール群にも含まれます.

 Makefileには,コンパイラ,リンカなどに対する入出力ファイルの依存関係も記述できます.修正したソース・ファイルだけをコンパイルし,修正していないソース・ファイルのコンパイルはしないということをmakeが自動的に判断して実行してくれます.


●統合開発環境ではGUIを利用

 Makefileを利用すれば,makeコマンドを実行するだけでコンパイル,リンクができてしまいます.しかし,C言語のような多くの命令やルールがある訳ではありませんが,Makefileに記述する指示も一種のプログラミング言語です.構文を理解して記述し,意図通りにコンパイル,リンクされることを確認する必要があります.また,コンパイラ,リンカの使い方やオプションの設定方法を理解した上で,入出力するファイルの依存関係にも注意する必要があります.

 統合開発環境では,コンパイルやリンクで必要なオプションの意味さえ理解しておけば,GUIを使って対話形式で設定できます(図13).またボタン一つでコンパイルやリンクをしてくれます.



図13 統合開発環境によるコンパイル設定
GUIを使い,対話形式で設定できる.

 


 統合開発環境には,コンパイルやリンク時に発生したエラーを発見しやすくする機能や,ソース・ファイルや設定ファイルなどの複数のファイルを一括して管理する機能があります.ソース・ファイルの追加やソース・ファイル名の変更,ファイルを格納するフォルダ(ディレクトリ)の変更などをした場合に,関連する設定ファイルや情報を自動的に更新してくれますので,コンパイル,リンク時の負担や設定ミスの軽減に役立ちます.

 そのほかにも,コーディングやコンパイル,リンクに必要なオプションなどの設定時に,対象となるマイコンの仕様に合った設定になっているかどうかをチェックできる統合開発環境もあります.

 このような機能を活用することで,コンパイル,リンク時に発生するエラーやデバッグ/テスト時にトラブルとなる原因を事前に発見できます.

 

組み込みキャッチアップ

お知らせ 一覧を見る

電子書籍の最新刊! FPGAマガジン No.12『ARMコアFPGA×Linux初体験』好評発売中

FPGAマガジン No.11『性能UP! アルゴリズム×手仕上げHDL』好評発売中! PDF版もあります

PICK UP用語

EV(電気自動車)

関連記事

EnOcean

関連記事

Android

関連記事

ニュース 一覧を見る
Tech Villageブログ

渡辺のぼるのロボコン・プロモータ日記

2年ぶりのブログ更新w

2016年10月 9日

Hamana Project

Hamana-8最終打ち上げ報告(その2)

2012年6月26日