seL4 / sel4-tutorials

Tutorials for working with seL4 and/or CAmkES.

Home Page:https://docs.sel4.systems/Tutorials

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Following Tutorials, unable to dollow CAmkESTutorial.pdf

Jesse-Millwood opened this issue · comments

I realize that there is a VM that is provided and works great but I wanted to be able to set up an environment myself. So I followed the prerequisites instructions and then tried the steps which are outlined in the docs/CAmkESTutorial.pdf file:

mkdir camkes-tutorials
cd camkes-tutorials
repo init -u http://github.com/sel4-projects/sel4-tutorials-manifest -m camkes-tutorials.xml
repo sync 
make arm_hello-camkes-0_defconfig
make

when I run make there was an issue with the capdl-tool building. It seemed there was an issue with cabal not finding the correct packages. The prerequisite instructions outline installing stack and the makefile in the master branch of the capDL tool uses stack to get the correct version of ghc and other packages. The capdl tool that is downloaded with the camkes-tutorials.xml manifest is an older version that uses cabal.

Changing the revision field in the capdl project line in the manifest file and doing another repo sync got me past the making of the capdl tool. Then there were more issues after that though. So I changed all of the revision fields from 3.0.x=compatible to 4.0.x-compatible and the kernel revision from 3.0.0 to 4.0.0 and the camkes tool from refx/tags/camkes-2.1.0 to refs/tags/camkes-2-3.0 (not sure if that was needed)

After those changes, doing a repo sync, make clean, make arm_hello-camkes-0_defonfig, and make I was able to successfully make the hello camkes project and use qemu to simulate it.

I am on Ubuntu 16.04 and did try installing cabal and installing the packages needed for the capdl tool that is originally downloaded by the camkes-tutorials.xml manifest but I could not figure out how to download the correct version of ghc for capdl

Ah yep. Looks like we updated the version numbers in the solutions but not the exercises themselves. Fixing now...

Fixed in this commit to sel4-tutorials-manifest: seL4/sel4-tutorials-manifest@83230b5