| | 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 | }}} |