KENJI’S BLOG このページをアンテナに追加 RSSフィード

Freezed...

2009-09-20

ARMプログラムをx86環境上で実行したいなら…

ATDE:http://armadillo.atmark-techno.com/downloads

ATDEはArmadilloシリーズの開発環境を提供するVMware仮想マシンのデータイメージです。イメージはLinuxデスクトップ環境をベースにGNUクロス開発ツールやその他の必要なツールが事前にインストールされています。

とのこと。

ダウンロードサイズは600MB程度、展開後は6GB近くなる。ユーザー:atmark、パスワード:atmarkでログイン可能。rootのパスワードはそのままrootでおk。このlinux環境の中にARM用のコンパイラが入っていますので、まずはそれでコンパイル。

$ cat > test.c
#include <stdio.h>

int main(void)
{
        printf("Hello ARM\n");
        return 0;
}
^C(Ctrl+C)
$ arm-linux-gnu-gcc test.c -o test
$ file test
test: ELF 32-bit LSB executable, ARM, version 1 (ARM), for GNU/Linux 2.4.1, 
dynamically linked (uses shared libs), for GNU/Linux 2.4.1, not stripped
$ ./test
-bash: ./test: cannot execute binary file
$

当然実行できませんので、qemuをインストールします。

$ su
Password:root
# apt-get update
# apt-get install qemu

無事、インストールが完了したら、qemuのユーザーモードエミュレーションを使ってARMバイナリを実行。

# qemu-arm -L /usr/arm-linux-gnu/ test
Hello ARM
#

同じようにしてppcの場合も実行できる。

# powerpc-linux-gnu-gcc -static test.c -o testppc
# qemu-ppc -L /usr/powerpc-linux/ testppc
Hello PPC
#

スパム対策のためのダミーです。もし見えても何も入力しないでください
ゲスト

コメントを書くには、なぞなぞ認証に回答する必要があります。

トラックバック - http://d.hatena.ne.jp/kenjiaiko/20090920/1253385747