本章では、Armadillo のソフトウェア開発を行うための開発環境を、作業用 PC に構築する方法について説明します。
Armadillo-400 シリーズのソフトウェア開発には、Debian 系の Linux 環境[](Debian GNU/Linux 5.0 コードネーム lenny を標準とします)が必要です。
作業用 PC が Windows の場合、Windows 上に仮想的な Linux 環境を構築する必要があります。
Windows 上に Linux 環境を構築する方法としては、「VMware」を推奨しています。VMware を使用する場合は、開発に必要なソフトウェアがインストールされた状態の OS イメージ「ATDE(Atmark Techno Development Environment)」[]を提供しています。
Windows 上に Linux 環境を構築する手順については、「ATDE Install Guide」を参照してください。
ATDE には、標準で基本的な開発環境がインストールされているため、ATDE をお使いになる場合は、「クロス開発環境パッケージのインストール」と「Atmark-Dist のビルドに必要なパッケージのインストール」は、行う必要ありません。
Debian 系 Linux では、アプリケーションやライブラリの管理には Debian (deb) パッケージ を使用します。
クロス開発を行うには、作業用 PC にクロス開発用のツールチェインのパッケージと、ターゲットアーキテクチャ用のライブラリをクロス開発用に変換したパッケージをインストールする必要があります。
Debian 系 Linux では ARM 用のアーキテクチャとして、arm と armel の2つがあります。これは、ABI (Application Binary Interface) の違いによるものです。arm アーキテクチャは OABI を、armel アーキテクチャは EABI を意味します。
Armadillo-400 シリーズでは、EABI を標準の ABI としています。そのため、ターゲットアーキテクチャとして armel のパッケージをインストールする必要があります。
付属 DVD のクロス開発環境ディレクトリ (cross-dev/deb/
) にクロス開発環境用のパッケージが用意されています。Armadillo-400 シリーズで開発を行う場合、通常は、armel
ディレクトリにある、ARM EABI クロス開発環境をインストールしてください。
インストールは root ユーザーで行う必要があります。deb パッケージをインストールするには、図5.1「インストールコマンド」のようにコマンドを実行します。
| |
---|
sudo は引数に与えられたコマンドを、別のユーザーとして実行するコマンドです。上記コマンドでは、root (スーパー)ユーザーとして、dpkg コマンドを実行します。 sudo を実行すると、パスワードを要求されることがあります。このとき入力するパスワードは、そのユーザーのパスワードであり、root パスワードではありません。 |
| |
---|
ご使用の開発環境に既に同一ターゲット向けのアーキテクチャ用クロス開発環境がインストールされている場合、新しいクロス開発環境をインストールする前に必ず既存環境をアンインストールするようにしてください。 |
5.2. Atmark-Dist のビルドに必要なパッケージのインストール
Armadillo 標準のディストリビューションである、Atmark-Dist をビルドするためには、表5.1「Atmark-Dist のビルドに必要なパッケージ一覧」に示すパッケージが作業用 PC にインストールされている必要があります。
表5.1 Atmark-Dist のビルドに必要なパッケージ一覧
パッケージ名 | バージョン |
---|
genext2fs | 1.4.1-2.1以降 |
file | 4.26-1以降 |
sed | 4.1.5-6以降 |
perl | 5.10.0-19lenny2以降 |
bison | 1:2.3.dfsg-5以降 |
flex | 2.5.35-6以降 |
libncurses5-dev | 5.7+20081213-1以降 |
現在インストールされているバージョンを表示するには、図5.2「インストール情報表示コマンド」のようにパッケージ名を指定して実行してください。
--list
はパッケージ情報を表示する dpkg のオプションです。package-name-pattern
にはバージョンを表示したいパッケージ名のパターンを指定します。
5.3. クロス開発用ライブラリパッケージのインストール
Atmark-Dist に含まれないアプリケーションやライブラリをビルドする際に、付属 DVD やダウンロードサイトには用意されていないライブラリパッケージが必要になることがあります。ここでは、クロス開発用ライブラリパッケージの作成方法およびそのインストール方法を紹介します。
まず、作成したいクロス開発用パッケージの元となるライブラリパッケージを取得します。取得するパッケージは、アーキテクチャをターゲットに、Debian ディストリビューションのバージョンを開発環境に合わせる必要があります。Armadillo-400 シリーズでは、アーキテクチャは armel、Debian ディストリビューションのバージョンは lenny (2011年3月現在の oldstable)になります。
例えば、libjpeg62の場合「libjpeg62_[version]
_armel.deb
」というパッケージになります。
Debian パッケージは、Debian Packages サイト[]から検索して取得することができます。
取得したライブラリパッケージをクロス開発用に変換するには、dpkg-cross コマンドを使用します。
作成されたクロス開発用ライブラリパッケージをインストールします。
| |
---|
Debian lenny 以外の Linux 環境で dpkg-cross を行った場合、インストール可能なパッケージを生成できない場合があります。 |
apt-cross コマンドを使用すると、上記の一連の作業を1つのコマンドで行うことができます。
--arch
オプションにはアーキテクチャを、--suite
オプションにはDebian ディストリビューションのバージョンをそれぞれ指定し、--install
オプションで取得/変換したパッケージをインストールすることを指定します。最後の引数には、パッケージ名を指定します。