Ghost - Latest i686-elf-tools, buildscript, ramdisk compiler
Posted: Tue Feb 18, 2014 3:48 am
Hey guys!
My kernel finally got a name: Ghost.
It is a 32bit kernel for the x86 architecture that is supposed to host a Java virtual machine. The JVM for it is currently under development by my buddy sknine, and in the near future we will merge the two projects. That's gonna be exciting We are planning to release the entire project as GPLv3 once it reaches a practical state.
Long story short, this thread is actually not about the kernel itself, but about a few tools I created when restoring my build process lately. I'll provide these tools here, as I hope that they might be useful for some of you. Suggestions to make it better are always welcome. I'm developing on Windows, but porting should be easy as the sources only depend on the C/C++ standard library.
Latest i686-elf cross compiler and binutils
I compiled the latest binutils 2.24 and GCC 4.8.2 with MinGW on Windows, the target platform is i686-elf.
Download: https://drive.google.com/file/d/0B85K_c ... sp=sharing
Buildscript in C++
There are some things to do when building my kernel, and I don't really know how to write such a complex makefile...^^ so I decided to write my buildscript in C++. The builder provides a few basic functions like recursive directory search, and you should be able to easily adapt it to build your own projects.
Download: https://drive.google.com/file/d/0B85K_c ... sp=sharing
Ramdisk compiler
This is a compiler for a relatively simple ramdisk format. It's kept as plain as possible, this makes writing a ramdisk reader for it really easy. A specification of the format can be found in the README file.
Download: https://drive.google.com/file/d/0B85K_c ... sp=sharing
Happy coding!
-maxdev
EDIT: I also added the cross compiler to the GCC Cross-Compiler wiki page.
http://wiki.osdev.org/GCC_Cross-Compile ... w_Compiler
My kernel finally got a name: Ghost.
It is a 32bit kernel for the x86 architecture that is supposed to host a Java virtual machine. The JVM for it is currently under development by my buddy sknine, and in the near future we will merge the two projects. That's gonna be exciting We are planning to release the entire project as GPLv3 once it reaches a practical state.
Long story short, this thread is actually not about the kernel itself, but about a few tools I created when restoring my build process lately. I'll provide these tools here, as I hope that they might be useful for some of you. Suggestions to make it better are always welcome. I'm developing on Windows, but porting should be easy as the sources only depend on the C/C++ standard library.
Latest i686-elf cross compiler and binutils
I compiled the latest binutils 2.24 and GCC 4.8.2 with MinGW on Windows, the target platform is i686-elf.
Download: https://drive.google.com/file/d/0B85K_c ... sp=sharing
Buildscript in C++
There are some things to do when building my kernel, and I don't really know how to write such a complex makefile...^^ so I decided to write my buildscript in C++. The builder provides a few basic functions like recursive directory search, and you should be able to easily adapt it to build your own projects.
Download: https://drive.google.com/file/d/0B85K_c ... sp=sharing
Ramdisk compiler
This is a compiler for a relatively simple ramdisk format. It's kept as plain as possible, this makes writing a ramdisk reader for it really easy. A specification of the format can be found in the README file.
Download: https://drive.google.com/file/d/0B85K_c ... sp=sharing
Happy coding!
-maxdev
EDIT: I also added the cross compiler to the GCC Cross-Compiler wiki page.
http://wiki.osdev.org/GCC_Cross-Compile ... w_Compiler