[Barrelfish-users] [Barrelfish] New Barrelfish Release

David Cock david.cock at inf.ethz.ch
Thu Sep 24 17:00:35 CEST 2015


Artur,
   Sorry, but looks like you just ran into a known bug with the new 
hake.  Instead of:

../hake/hake.sh -s .. -a x86_64

type

../hake/hake.sh -s ../ -a x86_64

It's the missing slash that's causing it not to find any Hakefiles. 
There's a fix on the internal tree, which I should probably out ASAP.

Dave

On 24/09/15 16:57, Artur Barczyk (artbarcz) wrote:
> Hi Gerd - sure, (partial) output below
> Thanks,
> Artur
>
> artur:build>make install
> Additional submodules:
> + shoal:      [NO]
> + green-marl: [NO]
> + green-marl: [DISABLED]
>
>
> Installing modules...
>    > Installing x86_64/sbin/elver
> mkdir: cannot create directory ‘/home/netos’: Permission denied
> install: cannot create regular file
> ‘/home/netos/tftpboot/artur/x86_64/sbin/elver’: No such file or directory
>    > Installing x86_64/sbin/cpu
> mkdir: cannot create directory ‘/home/netos’: Permission denied
>
> [many many more of these..]
>
>
>
>
> On 9/24/15, 16:53, "Gerd Zellweger" <gerd.zellweger at inf.ethz.ch> wrote:
>
>> Hi Artur,
>>
>> Can you try: make install
>>
>> Gerd
>>
>> On 2015-09-24 16:51, Artur Barczyk (artbarcz) wrote:
>>> Hi David,
>>>
>>> the makefile generated seems not to work, make without targets does not
>>> build barrelfish, just gives the help text. I am using ubuntu 14.10,
>>> gcc
>>> v4.9.1 and ghc 7.6.3, which works fine with a previous barrelfish
>>> release
>>> I pulled during summer.
>>> A suspicious statement when running hake is "Evaluating 0 HakefilesŠ² -
>>> full output below. Nearly ashamed to admit to not being a fluent
>>> haskell
>>> speaker, any help would be greatly appreciated! :-)
>>>
>>> Thanks,
>>> Artur
>>>
>>>
>>> artur:build>../hake/hake.sh -s .. -a x86_64
>>> Install directory defaulting to '.'
>>> Source directory is ..
>>> Architectures to build: "x86_64"
>>> Creating a local hake directory...
>>> Setting up hake build directory...
>>> Bootstrapping Config.hs
>>> Creating new symbolic_targets.mk file.
>>> Building hake...
>>> [ 1 of 16] Compiling Tools            ( ../hake/Tools.hs, hake/Tools.o
>>> )
>>> [ 2 of 16] Compiling TreeDB           ( ../hake/TreeDB.hs,
>>> hake/TreeDB.o )
>>> [ 3 of 16] Compiling HakeTypes        ( ../hake/HakeTypes.hs,
>>> hake/HakeTypes.o )
>>> [ 4 of 16] Compiling Args             ( ../hake/Args.hs, hake/Args.o )
>>> [ 5 of 16] Compiling Config           ( hake/Config.hs, hake/Config.o )
>>> [ 6 of 16] Compiling ArchDefaults     ( ../hake/ArchDefaults.hs,
>>> hake/ArchDefaults.o )
>>> [ 7 of 16] Compiling X86_64           ( ../hake/X86_64.hs,
>>> hake/X86_64.o )
>>> [ 8 of 16] Compiling K1om             ( ../hake/K1om.hs, hake/K1om.o )
>>> [ 9 of 16] Compiling X86_32           ( ../hake/X86_32.hs,
>>> hake/X86_32.o )
>>> [10 of 16] Compiling ARMv5            ( ../hake/ARMv5.hs, hake/ARMv5.o
>>> )
>>> [11 of 16] Compiling XScale           ( ../hake/XScale.hs,
>>> hake/XScale.o )
>>> [12 of 16] Compiling ARMv7            ( ../hake/ARMv7.hs, hake/ARMv7.o
>>> )
>>> [13 of 16] Compiling ARMv7_M          ( ../hake/ARMv7_M.hs,
>>> hake/ARMv7_M.o
>>> )
>>> [14 of 16] Compiling ARMv8            ( ../hake/ARMv8.hs, hake/ARMv8.o
>>> )
>>> [15 of 16] Compiling RuleDefs         ( ../hake/RuleDefs.hs,
>>> hake/RuleDefs.o )
>>> [16 of 16] Compiling Main             ( ../hake/Main.hs, hake/Main.o )
>>> Linking hake/hake ...
>>> Running hake...
>>> Source directory: .. (/home/artur/barrelfish)
>>> BF Source directory: .. (/home/artur/barrelfish)
>>> Install directory: . (/home/artur/barrelfish/build)
>>> Scanning directory tree...
>>> Creating Makefile...
>>> Evaluating 0 Hakefiles...
>>> Generating build directory dependencies...
>>> Now running initial make to build dependencies.
>>> Running 4 jobs at once (-j N to change this).
>>> ------------------------------------------------------------------
>>> This is the 'help' target for the Barrelfish Makefile.  This Makefile
>>> has been generated by hake in the top-level directory of your build
>>> tree.
>>> See the Hake documentation for more information.
>>>
>>>
>>> This Makefile contains build targets for the following architectures:
>>>
>>>
>>> x86_64
>>>
>>>
>>> To change configuration options, edit the Config.hs file in the hake
>>> subdirectory of this directory and run 'make rehake'.
>>>
>>>
>>> To change the set of symbolic make targets available (for example, to
>>> build a different set of modules or architectures for your boot image),
>>> edit the local copy of the symbolic_targets.mk in this directory.
>>>
>>>
>>> Useful make targets:
>>>   - <file>:           any file which can be built in the Barrelfish tree
>>>   - 'help':           show this help text
>>>   - 'help-platforms': show the platforms (file collections) which can be
>>> built
>>>   - 'help-boot':      show the boot sequences which can be initiated
>>>   - 'clean':          remove most generated files
>>>   - 'realclean':      remove all generated files (clears the build tree)
>>>   - 'rehake':         attempt to re-run hake
>>>
>>>
>>> artur:build>make
>>> ------------------------------------------------------------------
>>> This is the 'help' target for the Barrelfish Makefile.  This Makefile
>>> has been generated by hake in the top-level directory of your build
>>> tree.
>>> See the Hake documentation for more information.
>>>
>>>
>>> This Makefile contains build targets for the following architectures:
>>>
>>>
>>> x86_64
>>>
>>>
>>> To change configuration options, edit the Config.hs file in the hake
>>> subdirectory of this directory and run 'make rehake'.
>>>
>>>
>>> To change the set of symbolic make targets available (for example, to
>>> build a different set of modules or architectures for your boot image),
>>> edit the local copy of the symbolic_targets.mk in this directory.
>>>
>>>
>>> Useful make targets:
>>>   - <file>:           any file which can be built in the Barrelfish tree
>>>   - 'help':           show this help text
>>>   - 'help-platforms': show the platforms (file collections) which can be
>>> built
>>>   - 'help-boot':      show the boot sequences which can be initiated
>>>   - 'clean':          remove most generated files
>>>   - 'realclean':      remove all generated files (clears the build tree)
>>>   - 'rehake':         attempt to re-run hake
>>>
>>>
>>>
>>>
>>>
>>>
>>> On 9/3/15, 09:56, "David Cock" <david.cock at inf.ethz.ch> wrote:
>>>
>>>> Dear all,
>>>>
>>>> We are pleased to announce a new release of the Barrelfish OS. This
>>>> release includes large page support on ARM, and a significant overhaul
>>>> of the build system.  Runtime and memory consumption of Hake have
>>>> dropped by a factor of 10 and 20, respectively.  The new build system
>>>> also introduces the concept of 'build platforms' - top-level targets
>>>> for
>>>> each platform (e.g. x86_64 or PandaboardES).  Almost all Makefile
>>>> targets are now generated by Hake - very little remains in
>>>> symbolic_targets.mk.
>>>>
>>>> Support for Intel SCC and for ARM11MP (ARMv6) has been dropped in this
>>>> release, as we no longer maintain the corresponding hardware.  Code
>>>> for
>>>> these platforms will continue to be available via previous release
>>>> tags
>>>> in the repository.
>>>>
>>>> As always, you can get the latest version by cloning or pulling from
>>>> our
>>>> git repository [2].
>>>>
>>>> Cheers,
>>>> -- David
>>>>
>>>> [2] git://git.barrelfish.org/git/barrelfish
>>>>
>>>> ---
>>>> David Cock (51):
>>>>        Made errval_t a flounder builtin.
>>>>        Make build_pandaboard_image.sh use global ARM_GCC
>>>>        Generic modules shouldn't be listed under <arch>/
>>>>        Include modules_common in x86 builds
>>>>        Toolchain selection when bootstrapping builds
>>>>        WIP on a faster hake
>>>>        Generates a Makefile
>>>>        Replaced old hake
>>>>        Dependency generation for Flounder bindings relies on Flounder
>>>> def headers
>>>>        Down to 12s, targets build
>>>>        Sped up path manipulation, down to 9.2s
>>>>        Use a set for arch comparison, 9.0s
>>>>        Walk directories in parallel (async)
>>>>        Cleanup
>>>>        Switched from hake.Path to System.FilePath
>>>>        Wasn't outputting Target tokens
>>>>        Replaced allfiles list with a Trie
>>>>        Fixed a few bugs in the new search combinators
>>>>        Keep directory lists sorted
>>>>        TreeDB merge operation
>>>>        Generate source-tree relative filenames straight away
>>>>        Cleanup
>>>>        Cleanup
>>>>        Set RTSOPTS on build
>>>>        Merge branch 'master' into hake-platforms
>>>>        Removed SCC
>>>>        New-style Xeon Phi build
>>>>        Made lib/numa compile on x86_32
>>>>        Add -Wformat explicitly wherever -Wformat-security appears
>>>>        ARMv5 & XScale build.
>>>>        Make hake.sh parallelism configurable (-j N)
>>>>        Better description of hake phases
>>>>        armv7-m (heteropanda) builds.
>>>>        Made optimisation flags overridable per-platform.
>>>>        XScale builds
>>>>        Update -j N guidance
>>>>        Removed ARM11MP - unsupported and non-functional.
>>>>        More reasonable error output from Hake
>>>>        Updated hake build rules
>>>>        Don't run hake twice for 'make rehake'
>>>>        Add explicit dependency from asmoffsets.s to errno.h
>>>>        Quieted make a little.
>>>>        Consolidated toolchain selection
>>>>        Fixed a broken tool path
>>>>        Updated harness builds to match hake.sh
>>>>        Document Haskell package dependencies for Hake
>>>>        ARMv5 doesn't actually use romfs_size.h
>>>>        Added pandaboards to eth_machinedata.py (harness)
>>>>        Added async dep for hake
>>>>        Split Fugu .h and .c generation
>>>>        Removed reference to SCC docs.
>>>>
>>>> Reto Achermann (2):
>>>>        monitor: handover of correct state for cap revocations
>>>>        monitor: bugfixes in the revocation protocol
>>>>
>>>> Simon Gerber (7):
>>>>        arm: implement flush cache debug syscall
>>>>        32bit arm: fix large page support. Close T148.
>>>>        large page morecore: add command line options to test
>>>>        armv5: add missing cp15_invalidate_i_and_d_caches_fast()
>>>>        arm: fix caps_map_l1 for armv5 and remove panic()s in armv7
>>>>        monitor: remove old capability code
>>>>        monitor: distops: add missing free + assert in retrieve.
>>>>
>>>> Timothy Roscoe (2):
>>>>        Modularize symbolic targets a bit
>>>>        Simplification of symbolic_targets.mk, addition of platforms and
>>>> boots to Hake.
>>>>
>>>>
>>>> _______________________________________________
>>>> Barrelfish mailing list
>>>> Barrelfish at lists.inf.ethz.ch
>>>> https://lists.inf.ethz.ch/mailman/listinfo/barrelfish
>>>>
>>>> _______________________________________________
>>>> Barrelfish-users mailing list
>>>> Barrelfish-users at lists.inf.ethz.ch
>>>> https://lists.inf.ethz.ch/mailman/listinfo/barrelfish-users
>>>
>>> _______________________________________________
>>> Barrelfish-users mailing list
>>> Barrelfish-users at lists.inf.ethz.ch
>>> https://lists.inf.ethz.ch/mailman/listinfo/barrelfish-users




More information about the Barrelfish-users mailing list