Menu

Tree [01d039] master /
 History

HTTPS access


File Date Author Commit
 include 2011-10-27 Alfeiks Kaanoken (madtirra) Alfeiks Kaanoken (madtirra) [5798a4] namespace renamed, now domain...;
 kconfig 2009-11-27 Alfeiks Kaanoken (madtirra) Alfeiks Kaanoken (madtirra) [5f7477] applied path from Narender Kumar
 kernel 2011-10-27 Alfeiks Kaanoken (madtirra) Alfeiks Kaanoken (madtirra) [01d039] sys_kill is domain-ruled now;
 scripts 2009-06-16 Dan Kruchinin Dan Kruchinin [7fdc7c] * Build system was a bit fixed to have more arc...
 server 2011-08-04 Alfeiks Kaanoken (madtirra) Alfeiks Kaanoken (madtirra) [e286a4] Fixed elf loader, rwdata is now copied instead ...
 tests 2011-04-21 Alfeiks Kaanoken (madtirra) Alfeiks Kaanoken (madtirra) [330137] Changed comments credentials: updated web address,
 .gitignore 2010-11-15 Alfeiks Kaanoken (madtirra) Alfeiks Kaanoken (madtirra) [a3978f] moved some files to gitignore to stop annoying ...
 Changlelog-0.1.2 2011-09-29 Alfeiks Kaanoken (madtirra) Alfeiks Kaanoken (madtirra) [cc6ec0] chanhelog updated version 0.1.2 is ready
 Changlelog-0.1.3 2011-10-26 Alfeiks Kaanoken (madtirra) Alfeiks Kaanoken (madtirra) [c63410] new version, new changelog.
 Makefile 2011-05-10 Alfeiks Kaanoken (madtirra) Alfeiks Kaanoken (madtirra) [e6601b] version changed, TODO updated
 README 2009-06-30 Dan Kruchinin Dan Kruchinin [383a65] Fixed stupid typos
 TODO 2011-05-10 Alfeiks Kaanoken (madtirra) Alfeiks Kaanoken (madtirra) [e6601b] version changed, TODO updated
 rules.mak 2009-06-16 Dan Kruchinin Dan Kruchinin [83dd8f] Merging in progress

Read Me

How to build
============

1) Before configuring and building the kernel make sure that
you have the following packages installed on your system:
 * flex
 * bison
 * gperf

2) Configure the kernel:
  % make config - Configure the kernel using simple text-based config
   or
  % make menuconfig - Configure the kernel with GUI configuration tool.
                      NOTE: menuconfig requires libncurses.

3) And finally build the kernel itself:
  % make

After step [3] you'll see vmuielf and muielf files in your build directory.
 vmuielf is a MuString kernel raw binaries.
 muielf is a MuString kernel in ELF binary format.

4) Step four is optional. If you want to run microkernel on emulator, type:
  % make image

After this command you'll see boot.img in your build directory.
It can be launched via bochs, kvm or quemu.

Building the kernel with toolchain
==================================

Steps 1 and 2 are the same as above. Step three is a bit different.
You have to specify the path to your toolchain binaries via TOOLCHAIN
variable. For example let suppose that you have any architecture distinguishing
from amd64 and you really want to build amd64 kernel.
For this purpose you must have a working x86_64 toolchain(if you don't have one
try crosstool to build it[http://www.kegel.com/crosstool/]).

So let suppose that your toolchain sits in /opt/crosstool. Make:
 % make TOOLCHAIN=/opt/crosstool/gcc-3.4.4-glibc-2.3.4/x86_64-unknown-linux-gnu/bin/x86_64-unknown-linux-gnu-

Still have building problems?
=============================

Try to set VERBOSE variable to 'y'. It should show you useful more output from GNU make.
For example:
 % make VERBOSE=y

If it didn't help you, report a bug with detailed description of how to reproduce it.

FYI
===

1) type "make help" to see all available building options.
2) If you found out a BUG or have a question, mail us: jarios-dev@lists.jarios.org
Want the latest updates on software, tech news, and AI?
Get latest updates about software, tech news, and AI from SourceForge directly in your inbox once a month.