[Barrelfish-users] Hake building

Tim Kelly gtkelly at dialectronics.com
Sat Mar 24 21:55:39 CET 2018


Hello all,

I have a project in which Barrelfish looks to be a great solution.  I'm 
working with an unsupported BSD-licensed single processor (unthreaded) 
OS (obviously not a *BSD).  I've got a BSD-licensed toolchain (not 
clang).  The toolchain builds itself and the OS.  I have a particular 
executable to run on SBC hardware, which will be dedicated for running 
that executable (no, I'm not bitcoin mining, it's systems of ODEs).  The 
SoC is multi-core x86, and I have code that can be parallelized 
(ensembles with different initial conditions).  I'd like to run the OS I 
have on CPU0 and then run Barrelfish on CPU[1-3], using shared memory 
(2-4G total on-chip).  In theory, perhaps the OS could run on top of 
Barrelfish and I could run my executable on all four CPUs.

However, even getting started is proving a bit difficult.  Barrelfish 
builds with Hake, but building Hake requires the Glasgow-Haskell 
compiler (GHC).

# ../hake/hake.sh -s ../
Install directory defaulting to '.'
Source directory is ../
Architectures to build: "x86_64"
Setting up hake build directory...
You already have Config.hs, leaving it as-is.
Building hake...
ghc: not found

(It's a little unclear to me from TN-003-Hake what /home/barrelfish/src 
is supposed to be.  There's no src/ directory in the download.  I am 
using /home/barrelfish as the source directory.  I ran the hake.sh file 
from the build/ directory.)

GHC requires several non-BSD-licensed tools to build (perl, python, git, 
gnu binutils, etc).  Other than nano and gunzip, I'm not using any GNU 
tools (that I know of, I replace them when I find them with BSD-licensed 
alternatives).  It's bad enough I have to use configure, but a lot of 
times I can run the stock Makefile or use the .in template with a few 
tweaks.  I'm not a fan of make, but replacing it with something that 
requires GHC to be built is a bit of a tall order for my project.

Is the Haskell language used in any of the Barrelfish OS code itself?

Thank you,
tim

-- 
Every gun that is made, every warship launched, every rocket fired, 
signifies, in the final sense, a theft from those who hunger and are not 
fed, those who are cold and are not clothed.

		-- Dwight D. Eisenhower, 34th U.S. President


More information about the Barrelfish-users mailing list