[Armadillo:03505] Re: emdebianによるeabiビルド

Yasushi SHOJI email@hidden
2008年 10月 7日 (火) 10:57:12 JST


At Mon, 06 Oct 2008 20:42:12 +0900,
Takenoshita Koyo wrote:
> 
> 1. クロスコンパイル用のツールチェインをインストール
> email@hidden:~/$ sudo apt-get install libc6-armel-cross libc6-dev-armel-cross binutils-arm-linux-gnueabi gcc-4.3-arm-linux-gnueabi g++-4.3-arm-linux-gnueabi linux-kernel-headers-arm-cross

linux-kernel-headers-arm-crossは、必要無さそうです。ただし、このパッケー
ジを入れないと、limits.hがあるのに無いと怒られてしまいます。これは、
libraryのコンパイル時に -nostdlibが指定されているからなので、
vendors/config/arm.configから外してください。
# patchはそのうち

[...]
> 但し、makeするとき、atmark-dist/user以下でいくつかエラーがでます。
> A. <asm/page.h>をインクルードしている場合
> 特に、busy boxで<asm/page.h>をincludeしているファイルがたくさんありますが、
> /usr/arm-linux-gnueabi/includeには、page.hはないのでエラーになります。
> これは、単にコメントアウトしただけで回避しました。

まだコードは見ていませんが、busyboxのtrunkでは sys/param.hに置き換わっ
ているようです。

	http://repo.or.cz/w/busybox.git?a=commitdiff;h=4f9dd914799887b8b213fae014d594d25e7b16f0

あと、stripのところで改行されてパッチが壊れていたので、一応付けておきます。
# ちょっと考えてしまった…。

ping6は、glibが新しくなりdefineの名前が変更になっているからです。この
変更は、RFC 2292からRFC 3542への変更点を反映したもので、glibc2.3の時代
には両方使えるようになっていましたが、glibc2.4以降では新しいものだけに
なりました。

busyboxの修正は、svn trunkに入っているようです。
	
	http://repo.or.cz/w/busybox.git?a=commitdiff;h=6fb59512ae2a6a2080cf4473eccf2a08b8438c6f



-- 
          yashi

diff --git a/vendors/AtmarkTechno/Armadillo-500/config.arch
b/vendors/AtmarkTechno/Armadillo-500/config.arch
index 962d142..ae56b5a 100644
--- a/vendors/AtmarkTechno/Armadillo-500/config.arch
+++ b/vendors/AtmarkTechno/Armadillo-500/config.arch
@@ -20,7 +20,7 @@ CONSOLE_BAUD_RATE = 9600
 # STRIP_EXTRA_OPT := --remove-section=.note --remove-section=.comment
 # STRIP_EXTRA_LIBOPT := --remove-section=.note --remove-section=.comment --strip-unneeded

-VENDOR_CFLAGS = -I/usr/arm-linux/include -I$(GCC_DIR)/include
+VENDOR_CFLAGS = -I/usr/arm-linux-gnueabi/include -I$(GCC_DIR)/include


############################################################################

diff --git a/vendors/config/arm/config.arch
b/vendors/config/arm/config.arch
index 2385eb7..55129ca 100644
--- a/vendors/config/arm/config.arch
+++ b/vendors/config/arm/config.arch
@@ -57,7 +57,7 @@ endif

 MACHINE       = arm
 ARCH          = arm
-CROSS_COMPILE = arm-linux-
+CROSS_COMPILE = arm-linux-gnueabi-
 CROSS         = $(CROSS_COMPILE)

 CC        = $(CROSS_COMPILE)gcc $(CPUCFLAGS)




armadillo メーリングリストの案内