This document is currently unfinished...
Cross-compiling NetBSD -current
From NetBSD i386 for my Cobalt RaQ2+
- From the x86 machine, grab the sources and attempt to build:
# cd /usr/ # mkdir src && cd src # export CVS_RSH="ssh" # export CVSROOT="anoncvs@anoncvs.NetBSD.org:/cvsroot" # cvs checkout -A -P src # cd src # sh build.sh -O ../obj -T ../tools -m cobalt -a mipsel -D ~/dest -R ~/release release
- That gives these results:
make release started at: Sat Apr 2 01:41:58 EDT 2011 make release finished at: Sat Apr 2 08:54:28 EDT 2011 ===> Successful make release
- Now if you check out /usr/src/release you'll have cobalt/{binary,installation}.
- Since I did this from a base NetBSD install on the x86 - I used scp (I prefer rsync) to transfer the sets:
# cd /usr/ # scp -r release dayid@falkor:/usr/
- Once all the sets were transfered, I double-checked the MD5s by printing the MD5 file to the display, then showing the MD5 for each individual set and eyeballing them. I know this could've been further scripted, but I'm comfortable eyeballing MD5s.
dayid@falkor$ cd /usr/release/cobalt/binary/sets dayid@falkor$ cat MD5 dayid@falkor$ for file in *.tgz; do md5 $file; done
- Once the sets are good, extract all except etc.tgz - we'll use etcupdate for that.
tar -xvzpef base.tgz -C / tar -xvzpef comp.tgz -C / tar -xvzpef games.tgz -C / tar -xvzpef man.tgz -C / tar -xvzpef misc.tgz -C / tar -xvzpef modules.tgz -C / tar -xvzpef tests.tgz -C / tar -xvzpef text.tgz -C /
- Update /etc from etc.tgz
etcupdate -a -p less -s ./etc.tgz
- I received a warning after this about obsolete files, so cleared those up also:
/usr/sbin/postinstall -s './etc.tgz' -d / fix obsolete
- Move the new kernel into place
cp /netbsd /netbsd.1 cd /usr/release/cobalt/binary/kernel/ tar -xvzpef netbsd-GENERIC.tgz -C /