| 1 | |
| 2 | MutekH is a flexible kernel, with most configuration tweaks resolved at |
| 3 | compile time. Therefore, it can only be distributed as source. There is |
| 4 | no library building involved. |
| 5 | |
| 6 | Somes pages of this wiki refer to specific versions of the MutekH source |
| 7 | tree. This is intended. Here, we'll provide general installation notes, |
| 8 | therefore, we'll never use an explicit revision. |
| 9 | |
| 10 | = Prerequisites to build MutekH = |
| 11 | |
| 12 | == For a Linux host (as a process) == |
| 13 | |
| 14 | In order to compile MutekH as a process, like described in QuickStartUnix, |
| 15 | you only need a working GCC and the header files for your libc. Please |
| 16 | refer to your distribution manual to know more about this. |
| 17 | |
| 18 | == For SoCLib and other embedded platforms == |
| 19 | |
| 20 | For embedded platforms, you'll need: |
| 21 | * a working cross-compiler for your target architecture; you may either |
| 22 | follow soclib:InstallationNotes, or use [source:trunk/mutekh/tools/crossgen.mk@1269 tools/crossgen.mk], see below |
| 23 | * `dtc`, an utility to handle [FlattenedDeviceTree device trees], available at http://git.jdl.com/software/. |
| 24 | |
| 25 | |
| 26 | = Getting MutekH = |
| 27 | |
| 28 | This is a simple svn checkout. Pay attention there are some subversion |
| 29 | clients that cannot handle [http://svnbook.red-bean.com/en/1.0/ch07s03.html svn:externals] |
| 30 | feature. In doubt, a vanilla svn client is recommended. |
| 31 | |
| 32 | {{{ |
| 33 | svn co https://www.mutekh.org/svn/mutekh/trunk/mutekh |
| 34 | }}} |
| 35 | |
| 36 | If you need an explicit revision, simply add {{{-r number}}} to the command |
| 37 | line: |
| 38 | |
| 39 | {{{ |
| 40 | svn co -r 1234 https://www.mutekh.org/svn/mutekh/trunk/mutekh |
| 41 | }}} |
| 42 | |
| 43 | |
| 44 | = Building cross-compilers = |
| 45 | |
| 46 | SoCLib installation nodes already provides a way to get cross-compilers, |
| 47 | if you don't already have them, MutekH holds a tool |
| 48 | to build a complete cross-compilation toolchain: |
| 49 | |
| 50 | The script is in [source:trunk/mutekh/tools/crossgen.mk tools/crossgen.mk]. |
| 51 | |
| 52 | There is an inline help: |
| 53 | {{{ |
| 54 | $ tools/crossgen.mk |
| 55 | [prints some help] |
| 56 | }}} |
| 57 | |
| 58 | You can try a line like this one to get a Mips cross-compiler: |
| 59 | {{{ |
| 60 | $ tools/crossgen.mk all TARGET=mipsel-unknown-elf |
| 61 | }}} |