higepon / mona

MonaOS is a free operating system. It's new, small, simple, open source and well structured.

Home Page:http://www.monaos.org/

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

What is Mona?

MonaOS is a free operating system. See detailed information on http://www.monaos.org.

screenshot

Building and Running Mona

Requirements

  • git
  • Mingw (See building Mingw below)
  • nasm
  • mkisofs
  • QEMU
  • mosh

Building

% cd mona
% ./configure --mingw-prefix=/usr/bin/i586-mingw32msvc- 
% make
% cd ..
% cd contrib
% make
% cd ../mona/tool/qemu
% ./start.sh

Building the cutting-edge Mona

% git clone git://github.com/higepon/mona.git
% cd mona
% git submodule init
% git submodule update
% cd mona
% ./configure --mingw-prefix=/usr/bin/i586-mingw32msvc- 
% make
% cd ..
% cd contrib
% make
% cd ../mona/tool/qemu
% ./start.sh

Building Mingw

If you use Ubuntu, you can get mingw as "apt-get install mingw32". If you use other OS or need the latest gcc, build as follows. You need

  • gcc-4.6.1.tar.bz2
  • binutils-2.21.1.tar.gz
  • w32api-3.17-2-mingw32-dev.tar.lzma
  • mingwrt-3.18-mingw32-dev.tar.gz

Build

% export CC=clang    # For OSX only
% export CXX=clang++ # For OSX only
% export PATH=~/mona-mingw/bin/:$PATH
% mkdir ~/mingw
% cd ~/mingw
% tar vxf ~/src/w32api-3.17-2-mingw32-dev.tar.lzma
% tar vxf ~/src/mingwrt-3.18-mingw32-dev.tar.gz
% mkdir -p ~/tmp/build-gcc
% mkdir -p ~/tmp/build-binutils
% cd ~/tmp
% tar vxf ~/src/gcc-4.6.1.tar.bz2
% tar vxf ~/src/binutils-2.21.1.tar.gz
% cd ~/tmp/build-binutils
% ../binutils-2.21.1/configure --prefix=~/mona-mingw --target=i586-mingw32msvc
% make && make install
% cd ~/tmp/build-gcc
% ../gcc-4.6.1/configure --prefix=~/mona-mingw --target=i586-mingw32msvc --disable-nls \
  --disable-shared --disable-multilib --disable-decimal-float --disable-threads \
  --disable-libmudflap --disable-libssp --disable-libgomp --disable-libquadmath \
  --disable-target-libiberty --disable-target-zlib --enable-languages=c,c++ \ 
  --without-ppl --without-cloog  --with-headers=~/mingw/include --with-libs=~/mingw/lib \
  --with-as=~/mona-mingw/bin/i586-mingw32msvc-as --with-ld=~/mona-mingw/bin/i586-mingw32msvc-ld \
  --enable-sjlj-exceptions --enable-version-specific-runtime-libs

And then configure Mona with "export PATH=/mona-mingw/bin/:$PATH; ./configure --mingw-prefix=/mona-mingw/bin/i586-mingw32msvc- && make"

About

MonaOS is a free operating system. It's new, small, simple, open source and well structured.

http://www.monaos.org/


Languages

Language:C 58.4%Language:C++ 23.8%Language:Scheme 4.6%Language:Perl 3.6%Language:Makefile 3.5%Language:Assembly 1.4%Language:Roff 1.0%Language:DIGITAL Command Language 0.8%Language:Shell 0.7%Language:C# 0.6%Language:HTML 0.5%Language:Raku 0.3%Language:M4 0.2%Language:Batchfile 0.2%Language:PHP 0.1%Language:Prolog 0.1%Language:Ruby 0.1%Language:PostScript 0.0%Language:Java 0.0%Language:CSS 0.0%Language:eC 0.0%Language:UnrealScript 0.0%Language:XS 0.0%Language:Module Management System 0.0%Language:GDB 0.0%Language:Emacs Lisp 0.0%Language:Objective-C 0.0%Language:Python 0.0%Language:Awk 0.0%Language:Pascal 0.0%Language:sed 0.0%