[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: cross-compile environment on non-NetBSD box



すでに番外編に突入してますがとりあえずまとめ.
今回のメモ,GNU toolchain が使える環境なら
どのホストでもだいたい適用できるでしょうということで.

# BeOS R4.5 for Intel でやろうとしたら egcs が i386-beos に
# 対応してないし.binutils は elf32-i386 でいけるんだがなー.
# GPL モノだからどこかにパッチが転がっているんであらうか.

In message ``Re: limits.h (was re: cross-compile environment on non-NetBSD box)''
	Fri Jan 21 03:31:32 JST 2000,
	you@nightbreak.org (Y. Takizawa) writes:

> で,sys-include 設定して egcs 作り直した上で
> /sbin/* と /bin/* のコンパイルもやってみました(メモも更新).

これだと肝心の /bin/sh (ash) が作れないんで
(HOST_LINK なコマンド生成がたくさんある)
/bin/ksh で代用することとしました(逃げ).

--

ということで一通り作成できたので,メモリディスク作って
MINIROOTSIZE=8192 なカーネルにくっつけてみました.
ただし,さすがに Solaris2 上で vnd やら newfs やらはできないんで,
NetBSD/sparc 1.3.2 on SS IPX で行ないました.

# binutils の configure だけで数分かかる上に
# HDD 残りが 200 MB ほどしかないとゆう.
# これが滝沢の職場のメインマシンだったりする.

on NetBSD だけあってメモリディスク作成はさくさくいけるんですが,
mdsetimage はバイナリフォーマット依存ということで,
最近 pkg に追加された bfd-mdsetimage を使ってみました.
詳しい解説は開発者のお一人にお任せするとして,:-)
binutils の libbfd.a (と libiberty.a)だけ --target 指定して作成して
適当にリンクさせたら作れました.なにせ資源がないもんで….

--

このメモリディスク付カーネルを iMac DV で(BOOTP で)ブートさせたら,
とりあえず /sbin/init は動いたらしく
``Enter pathname of shell or RETURN for sh:''が出力されたのですが,
(まだ)USB キーボードが使えないのでそれ見て終わりましたとさ(しくしく).

# serial console & NFS root が一番楽なんだがなー.

--
Y. Takizawa	(滝沢陽三)
you@nightbreak.org, takizawa@computer.org
``Don't feel as if the key to successful computing is only in your hands.''