# install /usr/home/USER/work/usr/src/tools/bin/nbmandoc mkdir -p /usr/home/USER/work/usr/src/tools/bin /usr/home/USER/work/usr/src/tools/bin/shle--netbsdelf-install -c -r -m 555 mandoc /usr/home/USER/work/usr/src/tools/bin/nbmandoc ===> Tools built to /usr/home/USER/work/usr/src/tools ===> build.sh ended: Thu Oct 10 15:32:59 JST 2013 ===> Summary of results: build.sh command: ./build.sh -T tools -m landisk tools build.sh started: Thu Oct 10 15:23:38 JST 2013 NetBSD version: 6.1.2 MACHINE: landisk MACHINE_ARCH: sh3el Build platform: FreeBSD 9.2-RELEASE amd64 HOST_SH: /bin/sh No $TOOLDIR/bin/nbmake, needs building. Bootstrapping nbmake TOOLDIR path: /usr/home/USER/work/usr/src/tools DESTDIR path: /usr/home/USER/work/usr/src/obj/destdir.landisk RELEASEDIR path: /usr/home/USER/work/usr/src/obj/releasedir Created /usr/home/USER/work/usr/src/tools/bin/nbmake Updated makewrapper: /usr/home/USER/work/usr/src/tools/bin/nbmake-landisk Tools built to /usr/home/USER/work/usr/src/tools build.sh ended: Thu Oct 10 15:32:59 JST 2013 ===> .
# install /usr/home/USER/work/usr/src/../cross/bin/nbmandoc mkdir -p /usr/home/USER/work/usr/src/../cross/bin /usr/home/USER/work/usr/src/../cross/bin/shle--netbsdelf-install -c -r -m 555 mandoc /usr/home/USER/work/usr/src/../cross/bin/nbmandoc ===> Tools built to /usr/home/USER/work/usr/src/../cross ===> build.sh ended: Thu Oct 10 15:54:57 JST 2013 ===> Summary of results: build.sh command: ./build.sh -m landisk -T ../cross tools build.sh started: Thu Oct 10 15:46:02 JST 2013 NetBSD version: 6.1.2 MACHINE: landisk MACHINE_ARCH: sh3el Build platform: FreeBSD 9.2-RELEASE amd64 HOST_SH: /bin/sh No $TOOLDIR/bin/nbmake, needs building. Bootstrapping nbmake TOOLDIR path: /usr/home/USER/work/usr/src/../cross DESTDIR path: /usr/home/USER/work/usr/src/obj/destdir.landisk RELEASEDIR path: /usr/home/USER/work/usr/src/obj/releasedir Created /usr/home/USER/work/usr/src/../cross/bin/nbmake Updated makewrapper: /usr/home/USER/work/usr/src/../cross/bin/nbmake-landisk Tools built to /usr/home/USER/work/usr/src/../cross build.sh ended: Thu Oct 10 15:54:57 JST 2013 ===> .
# install /usr/home/USER/work/usr/src/obj/tooldir.FreeBSD-9.2-RELEASE- amd64/bin/nbmandoc mkdir -p /usr/home/USER/work/usr/src/obj/tooldir.FreeBSD-9.2-RELEASE- amd64/bin /usr/home/USER/work/usr/src/obj/tooldir.FreeBSD-9.2-RELEASE-amd64/bin/shle--netbsdelf-install -c -r -m 555 mandoc /usr/home/USER/work/usr/src/obj/tooldir.FreeBSD-9.2-RELEASE- amd64/bin/nbmandoc ===> Tools built to /usr/home/USER/work/usr/src/obj/tooldir.FreeBSD-9.2- RELEASE-amd64 ===> build.sh ended: Thu Oct 10 16:15:15 JST 2013 ===> Summary of results: build.sh command: ./build.sh -m landisk tools build.sh started: Thu Oct 10 16:07:01 JST 2013 NetBSD version: 6.1.2 MACHINE: landisk MACHINE_ARCH: sh3el Build platform: FreeBSD 9.2-RELEASE amd64 HOST_SH: /bin/sh TOOLDIR path: /usr/home/USER/work/usr/src/obj/tooldir.FreeBSD-9.2-RELEASE-amd64 DESTDIR path: /usr/home/USER/work/usr/src/obj/destdir.landisk RELEASEDIR path: /usr/home/USER/work/usr/src/obj/releasedir Updated makewrapper: /usr/home/USER/work/usr/src/obj/tooldir.FreeBSD-9.2-RELEASE-amd64/bin/nbmake-landisk Tools built to /usr/home/USER/work/usr/src/obj/tooldir.FreeBSD-9.2-RELEASE-amd64 build.sh ended: Thu Oct 10 16:15:15 JST 2013 ===> . $
# link GENERIC/netbsd /usr/home/USER/work/usr/src/obj/tooldir.FreeBSD-9.2-RELEASE-amd64/bin/shle--netbsdelf-ld -Map netbsd.map --cref -N -Ttext 0x8c001000 -e start -X -o netbsd ${SYSTEM_OBJ} ${EXTRA_OBJ} vers.o NetBSD 6.1.2 (GENERIC) #0: Thu Oct 10 16:21:26 JST 2013 text data bss dec hex filename 3210008 209892 134768 3554668 363d6c netbsd ===> Kernels built from GENERIC: /usr/home/USER/work/usr/src/sys/arch/landisk/compile/obj/GENERIC/netbsd ===> build.sh ended: Thu Oct 10 16:21:26 JST 2013 ===> Summary of results: build.sh command: ./build.sh -m landisk kernel=GENERIC build.sh started: Thu Oct 10 16:18:00 JST 2013 NetBSD version: 6.1.2 MACHINE: landisk MACHINE_ARCH: sh3el Build platform: FreeBSD 9.2-RELEASE amd64 HOST_SH: /bin/sh TOOLDIR path: /usr/home/USER/work/usr/src/obj/tooldir.FreeBSD-9.2-RELEASE-amd64 DESTDIR path: /usr/home/USER/work/usr/src/obj/destdir.landisk RELEASEDIR path: /usr/home/USER/work/usr/src/obj/releasedir Updated makewrapper: /usr/home/USER/work/usr/src/obj/tooldir.FreeBSD-9.2-RELEASE-amd64/bin/nbmake-landisk Building kernel without building new tools Building kernel: GENERIC Build directory: /usr/home/USER/work/usr/src/sys/arch/landisk/compile/obj/GENERIC Kernels built from GENERIC: /usr/home/USER/work/usr/src/sys/arch/landisk/compile/obj/GENERIC/netbsd build.sh ended: Thu Oct 10 16:21:26 JST 2013 ===> . $
前に作った環境を壊してしまったので,新たに作りつつメモ
NetBSDのクロスコンパイル環境は,FreeBSDでもLinuxでもCygwinでも可能。
VMware上に作るので,今回は,NetBSD6.1.2を用意した。
NetBSDのソースコードをNetBSD.orgから取得する。
ftp://ftp.netbsd.org/pub/NetBSD/NetBSD-6.1.2/source/sets
X関連はとりあえず不要(だと思う)なので,syssrc.tgz,src.tgz,sharesrc.tgz,gnusrc.tgzを取得する。
取ってきたソースを作業用ディレクトに展開する。
et1010というボード用にクロスコンパイルするので,ディレクトリ名は,nbsd612_et1010とする。
$ mkdir nbsd612_et1010 $ su # cd nbsd612_et1010 # tar xvzf gnusrc.tgz # tar xvzf sharesrc.tgz # tar xvzf src.tgz # tar xvzf syssrc.tgz
とするとnbsd612_et1010配下にusr/srcが作られる。
http://www.jp.netbsd.org/ja/docs/updating.htmlも参考にしてtoolchainを作成する。
あらかじめobj/およびtools/ ディレクトリを作成してからbuild.shを実行する必要があるとのこと。
サイトでは,/usr/objと/usr/toolsに作っている。
クロス開発なので,nbsd612_et1010配下にまとめるかな。それともtoolsは/usr/tools, obj/はクロス環境配下に配置するかなぁ。
悩ましいところ。
結局,クロス環境にまとめることにしてtoolchainを作成することにした。
# cd ~/nbsd612-et1010/usr/ # mkdir obj tools # ./build.sh -O ~/nbsd612-et1010/usr/obj -T ~/nbsd612-et1010/usr/tools -m et1010 -U -u tools
おっと,その前に...