1 = Getting Started = 2 3 To use this software, it is necessary to first obtain the L4Re and Fiasco.OC 4 source distribution: 5 6 [[http://l4re.org/download.html]] 7 8 With this unpacked, the patches from the L4Re-Fiasco.OC-patches distribution 9 need to be applied. This patch distribution can be obtained from the following 10 location: 11 12 [[http://www.boddie.org.uk/paul/L4Re-Fiasco.OC.html]] 13 14 The "current archive" should be obtained since the "initial archive" is merely 15 provided for historical purposes. Instructions about applying the patches are 16 provided in the distributed archive, as is a summary of the issues related to 17 configuring and building the software. Building can be done after the steps 18 described below. 19 20 Some dependencies are also needed and these are documented in a section below. 21 To actually build the software, various development tools are required, and 22 suggestions are also provided in the dependencies section. 23 24 == Configuring this Software == 25 26 Some files may need to be adjusted for the device on which the software is to 27 be deployed. A script is provided to check and update them: 28 29 {{{ 30 $LANDFALL/tools/checkconfig.sh $PLATFORM 31 }}} 32 33 (Here, `$LANDFALL` needs to expand to the location of this distribution 34 whereas `$PLATFORM` indicates a platform type.) 35 36 For example: 37 38 {{{ 39 ~/L4/Landfall/tools/checkconfig.sh qi_lb60 40 }}} 41 42 This configures the files for the Ben NanoNote. See the following file for a 43 list of supported platforms: 44 45 {{{ 46 conf/landfall-examples/platforms.txt 47 }}} 48 49 == Installing this Software == 50 51 With the above patches applied, this software can be installed within the 52 unpacked L4Re/Fiasco.OC distribution using a command of the following form: 53 54 {{{ 55 $LANDFALL/tools/install.sh $L4DIR 56 }}} 57 58 (Here, `$LANDFALL` needs to expand to the location of this distribution 59 whereas `$L4DIR` needs to expand to the location of the L4Re/Fiasco.OC 60 software.) 61 62 For example: 63 64 {{{ 65 ~/L4/Landfall/tools/install.sh ~/L4/src 66 }}} 67 68 (The repository root of the L4Re/Fiasco.OC distribution typically has a 69 directory name of `src`.) 70 71 == Building the Software == 72 73 With this software installed into the appropriate location, the instructions 74 for building Fiasco.OC and L4Re can now be followed. (They are provided in the 75 L4Re-Fiasco.OC-patches distribution.) This process should proceed without 76 error. 77 78 As a consequence of building Fiasco.OC and L4Re, a payload can be generated 79 and deployed for one of the examples provided by this software distribution. 80 For example, in the l4 subdirectory of the unpacked L4Re/Fiasco.OC 81 distribution, the following commands might be run: 82 83 {{{ 84 mkdir mybuild/images 85 cp conf/landfall-examples/mips-qi_lb60-keypad-demo.list conf/modules.list 86 make O=mybuild uimage E=mips-qi_lb60-keypad-demo-example 87 }}} 88 89 First, a directory for images or payloads is created. Here, it is assumed that 90 the `mybuild` directory has been named for building L4Re. 91 92 Then, a module list is copied from the conf/landfall-examples directory to 93 `conf/modules.list`, this being the place where the build system obtains the 94 details of the software to include in the payload. 95 96 Finally, the make invocation combines programs and libraries found in the 97 `mybuild` directory and uses the indicated payload to construct, in this case, 98 an example demonstrating use of the Ben NanoNote's keypad. 99 100 == Deploying the Software == 101 102 The resulting payload should reside in the created images directory and be 103 deployed to the appropriate location on storage media used to boot the target 104 device. For the above example, the following payload would be created: 105 106 {{{ 107 mybuild/images/bootstrap_mips-qi_lb60-keypad-demo-example.uimage 108 }}} 109 110 More information about deploying payloads and booting devices is provided in 111 the L4Re-Fiasco.OC-patches distribution's documentation.