1.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
1.2 +++ b/docs/wiki/Getting_Started Sat Apr 13 19:28:39 2019 +0200
1.3 @@ -0,0 +1,111 @@
1.4 += Getting Started =
1.5 +
1.6 +To use this software, it is necessary to first obtain the L4Re and Fiasco.OC
1.7 +source distribution:
1.8 +
1.9 +[[http://l4re.org/download.html]]
1.10 +
1.11 +With this unpacked, the patches from the L4Re-Fiasco.OC-patches distribution
1.12 +need to be applied. This patch distribution can be obtained from the following
1.13 +location:
1.14 +
1.15 +[[http://www.boddie.org.uk/paul/L4Re-Fiasco.OC.html]]
1.16 +
1.17 +The "current archive" should be obtained since the "initial archive" is merely
1.18 +provided for historical purposes. Instructions about applying the patches are
1.19 +provided in the distributed archive, as is a summary of the issues related to
1.20 +configuring and building the software. Building can be done after the steps
1.21 +described below.
1.22 +
1.23 +Some dependencies are also needed and these are documented in a section below.
1.24 +To actually build the software, various development tools are required, and
1.25 +suggestions are also provided in the dependencies section.
1.26 +
1.27 +== Configuring this Software ==
1.28 +
1.29 +Some files may need to be adjusted for the device on which the software is to
1.30 +be deployed. A script is provided to check and update them:
1.31 +
1.32 +{{{
1.33 +$LANDFALL/tools/checkconfig.sh $PLATFORM
1.34 +}}}
1.35 +
1.36 +(Here, `$LANDFALL` needs to expand to the location of this distribution
1.37 +whereas `$PLATFORM` indicates a platform type.)
1.38 +
1.39 +For example:
1.40 +
1.41 +{{{
1.42 +~/L4/Landfall/tools/checkconfig.sh qi_lb60
1.43 +}}}
1.44 +
1.45 +This configures the files for the Ben NanoNote. See the following file for a
1.46 +list of supported platforms:
1.47 +
1.48 +{{{
1.49 +conf/landfall-examples/platforms.txt
1.50 +}}}
1.51 +
1.52 +== Installing this Software ==
1.53 +
1.54 +With the above patches applied, this software can be installed within the
1.55 +unpacked L4Re/Fiasco.OC distribution using a command of the following form:
1.56 +
1.57 +{{{
1.58 +$LANDFALL/tools/install.sh $L4DIR
1.59 +}}}
1.60 +
1.61 +(Here, `$LANDFALL` needs to expand to the location of this distribution
1.62 +whereas `$L4DIR` needs to expand to the location of the L4Re/Fiasco.OC
1.63 +software.)
1.64 +
1.65 +For example:
1.66 +
1.67 +{{{
1.68 +~/L4/Landfall/tools/install.sh ~/L4/src
1.69 +}}}
1.70 +
1.71 +(The repository root of the L4Re/Fiasco.OC distribution typically has a
1.72 +directory name of `src`.)
1.73 +
1.74 +== Building the Software ==
1.75 +
1.76 +With this software installed into the appropriate location, the instructions
1.77 +for building Fiasco.OC and L4Re can now be followed. (They are provided in the
1.78 +L4Re-Fiasco.OC-patches distribution.) This process should proceed without
1.79 +error.
1.80 +
1.81 +As a consequence of building Fiasco.OC and L4Re, a payload can be generated
1.82 +and deployed for one of the examples provided by this software distribution.
1.83 +For example, in the l4 subdirectory of the unpacked L4Re/Fiasco.OC
1.84 +distribution, the following commands might be run:
1.85 +
1.86 +{{{
1.87 +mkdir mybuild/images
1.88 +cp conf/landfall-examples/mips-qi_lb60-keypad-demo.list conf/modules.list
1.89 +make O=mybuild uimage E=mips-qi_lb60-keypad-demo-example
1.90 +}}}
1.91 +
1.92 +First, a directory for images or payloads is created. Here, it is assumed that
1.93 +the `mybuild` directory has been named for building L4Re.
1.94 +
1.95 +Then, a module list is copied from the conf/landfall-examples directory to
1.96 +`conf/modules.list`, this being the place where the build system obtains the
1.97 +details of the software to include in the payload.
1.98 +
1.99 +Finally, the make invocation combines programs and libraries found in the
1.100 +`mybuild` directory and uses the indicated payload to construct, in this case,
1.101 +an example demonstrating use of the Ben NanoNote's keypad.
1.102 +
1.103 +== Deploying the Software ==
1.104 +
1.105 +The resulting payload should reside in the created images directory and be
1.106 +deployed to the appropriate location on storage media used to boot the target
1.107 +device. For the above example, the following payload would be created:
1.108 +
1.109 +{{{
1.110 +mybuild/images/bootstrap_mips-qi_lb60-keypad-demo-example.uimage
1.111 +}}}
1.112 +
1.113 +More information about deploying payloads and booting devices is provided in
1.114 +the L4Re-Fiasco.OC-patches distribution's documentation.