May 4, 2017

Xinu on the Orange Pi - Quick Start Guide

These are the steps I take to build Xinu for the Orange Pi on my Fedora Linux System.

First of all you will need some packages you are not likely to have already installed:

dnf install flex bison flex-devel

Then you should clone the sources from Github, I am currently working on the "multicore" branch, but you probably want to just stay on the master

git clone https://github.com/real-xinu/xinu-orangepi.git
git checkout multicore

Xinu ships with its own cross-compiler toolchain in ../cross_compiler/bin, so you don't have to worry about that.

To build, you do this:

cd xinu-orangepi/compile
make clean
make
The "make clean" is almost always a good idea before a build. (In other words, it is essential -- always do "make clean ; make"). You can expect to see (and ignore) the following warning:
/usr/bin/gcc  -o config y.tab.c -lfl
y.tab.c: In function ‘yyparse’:
y.tab.c:1301:16: warning: implicit declaration of function ‘yylex’ [-Wimplicit-function-declaration]
       yychar = yylex ();
                ^~~~~
The ultimate product of the build process that I care about is the file "xinu.bin" in the compile directory. I copy this to /var/lib/tftpboot and my Orange Pi board uses dhcp and tftp via U-boot to get it running. Setting that up is a topic for another write-up.


Feedback? Questions? Drop me a line!

Tom's Computer Info / tom@mmto.org