RZマイコン基板(CEV-RZ/A1L) | Windows版Linaro ARM Linux GCCで'kensa'プログラムをビルド
Windows版Linaro ARM Linux GCCでCEV-RZ/A1L制御プログラムを作れるだろうと考えているのですが、
CEV-RZ/A1L Linuxでハードウェア(というかマイコン)を制御するAPIのドキュメントが見当たらなかった
ので、サンプルプログラムから読み解こうと思い、CEV Linux SDK V1.00.00フォルダを探していたところ、
'samples'フォルダにあった'kensa'というプログラムに気付きました。いつものように、ちょっと好奇心
から、これをWindows版Linaro ARM Linux GCCでビルドしてみました。
CEV Linux SDK V1.00.00のセットアップフォルダ内にあった'kensa'プログラム

Windowsにコピーした'kensa'プログラム('webapp-src'フォルダのソースも使用するので一緒にコピー)

Windowsのコマンドプロンプトでe2studio同梱版make + Windows版Linaro ARM Linux GCCでビルド

Makefileは以下のように変更しました。(KERNEL_DIRは、Makefile中で定義されているかどうかチェック
しているため、形だけ残しました。KERNEL_DIRに形だけ設定したフォルダは、作ってさえいません。)
変更前
BUILDROOT_DIR:=../../../../..
KERNEL_DIR:=$(BUILDROOT_DIR)/output/build/linux-3.8.13
CROSS_COMPILE:=$(BUILDROOT_DIR)/output/host/usr/bin/arm-linux-gnueabihf-
変更後
KERNEL_DIR:=../linux-3.8.13
CROSS_COMPILE:=arm-linux-gnueabihf-
追記 : メモ
なお、e2studioには、極僅かなものしかありませんが、以下のMSYSベースのコマンドが同梱されています。
echo
make
mv
rm
sh

追記 : メモ
Makefileが複雑になってくると、書き換えが面倒になってきます。例えば、U-BootのMekefileには、以下の
記述がありました。MakefileにLinuxのシェルスクリプトが埋め込まれていて、その中でwcやawkといった
Linuxコマンドが使われています。(他にも、Linuxのcat,sed,find,xargs等々のコマンドも使われています。)
ifneq ($(CONFIG_BOARD_SIZE_LIMIT),)
BOARD_SIZE_CHECK = \
@actual=`wc -c $@ | awk '{print $$1}'`; \
limit=`printf "%d" $(CONFIG_BOARD_SIZE_LIMIT)`; \
if test $$actual -gt $$limit; then \
echo "$@ exceeds file size limit:" >&2 ; \
echo " limit: $$limit bytes" >&2 ; \
echo " actual: $$actual bytes" >&2 ; \
echo " excess: $$((actual - limit)) bytes" >&2; \
exit 1; \
fi
else
BOARD_SIZE_CHECK =
endif
追記 : メモ
誰か既にやっている人はいないものだろうか、、、
Google検索 - U-BootをWindows上でビルド
https://www.google.co.jp/search?q=U-Boot%E3%82%92Windows%E4%B8%8A%E3%81%A7%E3%83%93%E3%83%AB%E3%83%89
CEV-RZ/A1L Linuxでハードウェア(というかマイコン)を制御するAPIのドキュメントが見当たらなかった
ので、サンプルプログラムから読み解こうと思い、CEV Linux SDK V1.00.00フォルダを探していたところ、
'samples'フォルダにあった'kensa'というプログラムに気付きました。いつものように、ちょっと好奇心
から、これをWindows版Linaro ARM Linux GCCでビルドしてみました。
CEV Linux SDK V1.00.00のセットアップフォルダ内にあった'kensa'プログラム

Windowsにコピーした'kensa'プログラム('webapp-src'フォルダのソースも使用するので一緒にコピー)

Windowsのコマンドプロンプトでe2studio同梱版make + Windows版Linaro ARM Linux GCCでビルド

Makefileは以下のように変更しました。(KERNEL_DIRは、Makefile中で定義されているかどうかチェック
しているため、形だけ残しました。KERNEL_DIRに形だけ設定したフォルダは、作ってさえいません。)
変更前
BUILDROOT_DIR:=../../../../..
KERNEL_DIR:=$(BUILDROOT_DIR)/output/build/linux-3.8.13
CROSS_COMPILE:=$(BUILDROOT_DIR)/output/host/usr/bin/arm-linux-gnueabihf-
変更後
KERNEL_DIR:=../linux-3.8.13
CROSS_COMPILE:=arm-linux-gnueabihf-
追記 : メモ
なお、e2studioには、極僅かなものしかありませんが、以下のMSYSベースのコマンドが同梱されています。
echo
make
mv
rm
sh

追記 : メモ
Makefileが複雑になってくると、書き換えが面倒になってきます。例えば、U-BootのMekefileには、以下の
記述がありました。MakefileにLinuxのシェルスクリプトが埋め込まれていて、その中でwcやawkといった
Linuxコマンドが使われています。(他にも、Linuxのcat,sed,find,xargs等々のコマンドも使われています。)
ifneq ($(CONFIG_BOARD_SIZE_LIMIT),)
BOARD_SIZE_CHECK = \
@actual=`wc -c $@ | awk '{print $$1}'`; \
limit=`printf "%d" $(CONFIG_BOARD_SIZE_LIMIT)`; \
if test $$actual -gt $$limit; then \
echo "$@ exceeds file size limit:" >&2 ; \
echo " limit: $$limit bytes" >&2 ; \
echo " actual: $$actual bytes" >&2 ; \
echo " excess: $$((actual - limit)) bytes" >&2; \
exit 1; \
fi
else
BOARD_SIZE_CHECK =
endif
追記 : メモ
誰か既にやっている人はいないものだろうか、、、
Google検索 - U-BootをWindows上でビルド
https://www.google.co.jp/search?q=U-Boot%E3%82%92Windows%E4%B8%8A%E3%81%A7%E3%83%93%E3%83%AB%E3%83%89
- 関連記事
-
- RZマイコン基板(CEV-RZ/A1L) | 'kensa'プログラムをPleiades Kepler + Cygwin GCCでビルド
- RZマイコン基板(CEV-RZ/A1L) | 'kensa'プログラムをPleiades Kepler + MinGW GCCでビルド→失敗
- Win/Linuxクロス開発 | Pleiades Kepler + VMware Player上のx86 Linux GDBでデバッグ
- Win/Linuxクロス開発 | Pleiades Kepler + VMware Player上のx86 Linux GCCでビルド
- RZマイコン基板(CEV-RZ/A1L) | Pleiades Kepler + Windows版Linaro ARM Linux GCCでビルド (3)
- RZマイコン基板(CEV-RZ/A1L) | Pleiades Kepler + Windows版Linaro ARM Linux GCCでビルド (2)
- RZマイコン基板(CEV-RZ/A1L) | Pleiades Kepler + Windows版Linaro ARM Linux GCCでビルド (1)
- RZマイコン基板(CEV-RZ/A1L) | Windows版Linaro ARM Linux GCCで'kensa'プログラムをビルド
- RZマイコン基板(CEV-RZ/A1L) | Windows版Linaro ARM Linux GCCを使えば事足りるのかも
- RZマイコン基板(CEV-RZ/A1L) | CEV Linux SDK V2.00.00がリリースされていた
- Win/Linuxクロス開発 | WindowsからVMware Player上のUbuntuのコマンドを実行
- Win/Linuxクロス開発 | e2studioからsamba経由でCEV Linux SDKのソースコードにアクセス
- Win/Linuxクロス開発 | VMware Playerの共有フォルダではCEV Linux SDKをビルド出来ない
- Win/Linuxクロス開発 | WindowsのフォルダをVMware Player上のUbuntuの~/下に割り当て
- Win/Linuxクロス開発 | WindowsとVMware Player上のUbuntuでWindowsのフォルダを共有
2013/12/07 blog-entry-378 category: Pleiades & CrossGCC
| h o m e |