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

Re: Cross compile



ftp://ftp.netbsd.org/pub/incoming/sakamoto/cross-netbsd.tgz

修正しました。install後のsymbolic link等の作業は必要ないです。

/usr/pkgsrc/crossにcross-netbsd.tgzを展開して、
	cd /usr/pkgsrc/cross/cross-netbsd
	make TARGET_MACHINE_ARCH=mipsel install clean CLEANDEPENDS=1
でinstallします。
	env MACHINE=hpcmips DESTDIR=/a/root \
		/usr/pkg/mipsel-netbsd/bin/mipsel-netbsd-make
のようにmakeします。


mipsel、powerpc、sh3(OBJECT_FMT=ELF付き)でcross compile環境を
作れることを確認しました。a.outなtargetだと悲しいことが起こるでしょう...


takemura@netbsd.org wrote:

 > いいつけをきちんと守らずに、以下のように 2 回に分けて
 > 実行したところ、make install でエラーになってしまいました。

NetBSDは1.4.2でしょうか?
make installを分けるとエラーになる原因はわかりませんが、
分けなければ問題ないわけですね。

gnusrcのusr.binとlibのBSD makeによるmake方法を使っているので、
cross-netbsd pkgでcompileするには、使用するgnusrcの日付に
近い日付のNetBSDを用意するのが吉です。
ただ、1.4.2あたりからmakeや/usr/share/mkが大幅に変わってないと思うので、
あんまり問題はないんじゃないかなぁ、と思います。

あと、hostのOBJECT_FMTとtargetのOBJECT_FMTが違うと
ややこしいことが起こるかもしれません。

てことでcross-netbsd pkgを使うのならば、cross compile hostには
-currentをおすすめしたいところなのですが、最近の-currentはなんか
ややっこしいことになってますからねぇ...

もひとつ、gcc-2.9.x が gnusrc にimportされると
このpkgsrc使えなくなるかもしれませんのでご注意を。
まぁ、今度はcrossもちゃんと考えてるみたいですから、
そもそもこのpkgsrc要らなくなって、よりhappyなわけで。

sakamoto