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

Re: [want] NetBSD/ofppc snapshot



tsubai@iri.co.jp wrote:

 > たぶん坂本さんのほうがくわしいんですが…。

RS/6000はuraさんの方が...


NetBSD上にcross compile環境を作る方法をまとめときましょう。

以下はNetBSD-currentを前提にしてます。
(sh,make,/usr/share/mkなどが、1.3.xと-currentで違うから)

1. cross compilerを作成する。
	pkgsrc.tar.gzを持ってきて展開します。

	# cd pkgsrc/cross/powerpc-netbsd
	# make all install clean

	これだけ :-)


2. cross make用shell scriptを用意する。
	以下のscriptを必要に応じて書き換えて、
	pathの通ったところに ppc-make としておきます。

	DESTDIRは、ターゲットの'/'にあたり、
	NetBSDのsource treeでppc-make installすると、
	DESTDIRディレクトリにインストールされます。
	つまりターゲットからNFS mountすれば、そのまま使用できます。
	十分に空きがあるパーティション上のディレクトリを指定しましょう。

	bebox,macppcをターゲットにcross makeする人は、
	MACHINE=ofppcはターゲットのマシン(bebox,macppc)に書き換えましょう。

	(ベースはi386elf用のscript)
-----
#! /bin/sh
DESTDIR=/a/root export DESTDIR
MACHINE=ofppc export MACHINE
MACHINE_ARCH=powerpc export MACHINE_ARCH
WHICH=powerpc-netbsd

LOCAL=/usr/pkg
BINDIR=$LOCAL/cross/bin
PATH=$BINDIR:$LOCAL/cross/$WHICH/bin:$PATH:$LOCAL/cross/bin:$PATH export PATH

GCC_EXEC_PREFIX=$WHICH

AR=$BINDIR/$WHICH-ar export AR
AS=$BINDIR/$WHICH-as export AS
CC=$BINDIR/$WHICH-gcc export CC
CPP=`$CC -print-prog-name=cpp` export CPP
CXX=$BINDIR/$WHICH-c++ export CXX
FC=$BINDIR/$WHICH-f77 export FC
LD=$BINDIR/$WHICH-ld export LD
NM=$BINDIR/$WHICH-nm export NM
RANLIB=$BINDIR/$WHICH-ranlib export RANLIB
SIZE=$BINDIR/$WHICH-size export SIZE
ADDR2LINE=$BINDIR/$WHICH-addr2line export ADDR2LINE
GASP=$BINDIR/$WHICH-gasp export GASP
OBJCOPY=$BINDIR/$WHICH-objcopy export OBJCOPY
OBJDUMP=$BINDIR/$WHICH-objdump export OBJDUMP
STRINGS=$BINDIR/$WHICH-strings export STRINGS
STRIP=$BINDIR/$WHICH-strip export STRIP

HOSTED_CC=cc export HOSTED_CC

MAKE=make export MAKE
#MAKE="make -f ${bsd_root}/usr/share/mk/sys.mk -f Makefile"; export MAKE
#MAKEFLAGS="-I ${bsd_root}/usr/share/mk" ; export MAKEFLAGS

set -x
exec $MAKE "$@"
-----


3. NetBSD-currentのsourceを用意。
	どこかに展開後、
	% cd src
	# ppc-make beforeinstall
	# (cd share/mk; ppc-make install)
	# ppc-make includes
	% cd src/lib; ppc-make
	# ppc-make install

で、準備終り(のはず)。
これで、3で用意したsourceをcross compileできると思います。

例えば
	% cd src/sys/arch/ofppc/stand/ofwboot
	% ppc-make
とか。

sakamoto@cec.co.jp