seL4 Tutorial 1 won't build the code
andrewmilson opened this issue · comments
OS: Ubuntu 16.04 x86_64
I have installed all prerequisites
apt-get install git repo cmake ninja-build clang gcc-multilib gcc-arm-none-eabi binutils-arm-none-eabi \
libncurses-dev libxml2-utils libssl-dev libsqlite3-dev libcunit1-dev expect python-pip
pip install camkes-deps
# Required for CAmkES only
curl -sSL https://get.haskellstack.org/ | sh
I have also got the code
mkdir sel4-tutorials-manifest
cd sel4-tutorials-manifest
repo init -u https://github.com/SEL4PROJ/sel4-tutorials-manifest -m sel4-tutorials.xml
repo sync
From the root directory of sel4-tutorials-manifest
I have tried running the following from https://wiki.sel4.systems/seL4%20Tutorial%201.
make ia32_hello-1_defconfig
Although am getting the error:
$ make ia32_hello-1_defconfig
/home/andrew/work/projects/os/sel4/tutorials/projects/sel4-tutorials/build-config//Makefile-common:24: Unsupport or undefined platform, did you run make <defconfig>?
/home/andrew/work/projects/os/sel4/tutorials/projects/sel4-tutorials/build-config//Makefile-common:42: Unsupported or undefined architecture, did you run make <defconfig>?
[GEN] /home/andrew/work/projects/os/sel4/tutorials/Makefile
make -f tools/kbuild/Makefile.build obj=tools/kbuild/basic
make[1]: Entering directory '/home/andrew/work/projects/os/sel4/tutorials'
gcc -Wp,-MD,tools/kbuild/basic/.fixdep.d -Itools/kbuild/basic -Wall -o tools/kbuild/basic/fixdep tools/kbuild/basic/fixdep.c
gcc -Wp,-MD,tools/kbuild/basic/.docproc.d -Itools/kbuild/basic -Wall -o tools/kbuild/basic/docproc tools/kbuild/basic/docproc.c
make[1]: Leaving directory '/home/andrew/work/projects/os/sel4/tutorials'
gcc -Wp,-MD,tools/kbuild/kconfig/.conf.o.d -Itools/kbuild/kconfig -Wall -DCURSES_LOC="<ncurses.h>" -DLOCALE -c -o tools/kbuild/kconfig/conf.o tools/kbuild/kconfig/conf.c
gcc -Wp,-MD,tools/kbuild/kconfig/.zconf.tab.o.d -Itools/kbuild/kconfig -Wall -DCURSES_LOC="<ncurses.h>" -DLOCALE -I/home/andrew/work/projects/os/sel4/tutorials/tools/kbuild/kconfig -Itools/kbuild/kconfig -c -o tools/kbuild/kconfig/zconf.tab.o tools/kbuild/kconfig/zconf.tab.c
gcc -o tools/kbuild/kconfig/conf tools/kbuild/kconfig/conf.o tools/kbuild/kconfig/zconf.tab.o
Kconfig:26: can't open file "apps/hello-1/Kconfig"
/home/andrew/work/projects/os/sel4/tutorials/tools/kbuild/kconfig/Makefile:33: recipe for target 'ia32_hello-1_defconfig' failed
make[1]: *** [ia32_hello-1_defconfig] Error 1
tools/common/project.mk:212: recipe for target 'ia32_hello-1_defconfig' failed
make: *** [ia32_hello-1_defconfig] Error 2
Thanks for pointing that out. I can reproduce the problem and have fixed it internally. Expect to see the fix pushed to github it about a day. I'll close this once I confirm that this is fixed on github.
In the meantime, try using the latest released manifest (it should be equivalent to sel4-tutorials.xml, which I think just tracks the latest release anyway):
repo init -u https://github.com/SEL4PROJ/sel4-tutorials-manifest.git -m 5.2.x.xml
The default.xml manifest is a symlink to the latest released manifest (and will move as newer versions are released). Get it with:
repo init -u https://github.com/SEL4PROJ/sel4-tutorials-manifest.git
Thank you. Just tried again and it is working!