Hi,
I was able to cross compile Plan9 from MacOS which is probably quite similar
to cross compiling from Linux.
The first thing was to compile the plan9 C compilers
of the Plan9 C compilers are easier to compile on non-plan9 OSes.
Then I installed plan9port which contained a few utilities that are used
when compiling the plan9 kernel (/bin/rc, /bin/mk).
Then I setup a few symlinks at the root e.g.
/lib -> /home/pad/plan9/root/lib
/386 -> /home/pad/plan9/root/386
/sys -> /home/pad/plan9/sys
Finally I have a env.sh that I source that contains important environment variables:
export KENCC=/home/pad/kencc
# need to modify plan9/src/cmd/mk/shell.c and put rcshell as default shell
export PLAN9=/usr/local/plan9
export PATH=$PLAN9/bin:$KENCC/bin:$PATH
#for 8._cp to be found and called
PATH=$PATH:.
export objtype=386
#export objtype=arm
export cputype=386
Then I did a few modifications to plan9 Labs and was able to compile and run everything
under qemu.
My forks: