docs: update build instructions

Signed-off-by: EnderIce2 <enderice2@protonmail.com>
This commit is contained in:
2025-03-08 00:47:43 +00:00
parent 27ad61fa17
commit 1c842ef3d1
4 changed files with 95 additions and 74 deletions

View File

@ -5,9 +5,9 @@
<p align="center">
<p align="center">
<img alt="GitHub Repo stars" src="https://img.shields.io/github/stars/EnderIce2/Fennix">
<img alt="GitHub Repo stars" src="https://img.shields.io/github/stars/EnderIce2/Fennix">
<img alt="GitHub Actions Workflow Status" src="https://img.shields.io/github/actions/workflow/status/EnderIce2/Fennix/makefile.yml">
<img alt="GitHub commit activity" src="https://img.shields.io/github/commit-activity/m/EnderIce2/Fennix">
<img alt="GitHub commit activity" src="https://img.shields.io/github/commit-activity/m/EnderIce2/Fennix">
<img alt="GitHub License" src="https://img.shields.io/github/license/EnderIce2/Fennix">
</p>
</p>
@ -24,15 +24,15 @@
## Features
- 🧩 Flexible and modular
- You can easily choose the components you want to include in the kernel
- You can easily choose the components you want to include in the kernel
- 🎛️ Compatible with multiple platforms
- Supports i386, AMD64 and AArch64 platforms
- Supports i386, AMD64 and AArch64 platforms
- 📦 Support for different operating system binaries
- You can run Linux and Windows binaries
- You can run Linux and Windows binaries
- 🖨️ Driver support
- Supports a variety of drivers for different hardware components
- Supports a variety of drivers for different hardware components
- 📖 Detailed documentation
- The project is well-documented using Doxygen
- The project is well-documented using Doxygen
> [!IMPORTANT]
> Some features are still in development and may not be fully functional.
@ -43,75 +43,14 @@
You can download the development ISO image from the [Actions](https://github.com/EnderIce2/Fennix/actions/workflows/makefile.yml) tab on the GitHub repository.
### 🛠️ Compile from Source
### 🛠️ Prerequisites
To build the project, you need to have the following tools installed:
- `make`
- `gcc`
- `ld`
- ... and other standard Unix tools
- These can be installed using `build-essential` on Ubuntu or `base-devel` on Arch Linux
- `doxygen` (optional)
- To generate the documentation
### 🚀 Installation
You can install the project by building it from source.
#### Cloning the Repository
First, clone the repository using Git:
```sh
git clone https://github.com/EnderIce2/fennix.git
cd fennix
```
#### Preparing the Environment
Before building the project, you need to build the cross-compiler toolchain and QEMU. You can do this by running the following command:
```sh
make setup
```
This will clone, patch, and build the required tools for you.
#### Building the Project
To build the project, run:
```sh
make build
```
This will build the kernel, userspace, and drivers. The iso image will be `Fennix.iso`.
#### Running the OS
You can run the OS using QEMU. First, build the project, then run:
```sh
make run
```
#### Additional Configuration
You can configure the project by editing the `config.mk` file.
## 🧪 Debugging
If you use Visual Studio Code, you can press `F5` to start debugging the OS.
The configuration is already set up for you.
> [!TIP]
> Make sure you built the project at least once before debugging.
Check out the [installation guide](INSTALL.md) to compile the project from source.
## 📚 Documentation
The project documentation is generated using Doxygen.
The current documentation is available [here](https://fennix.enderice2.com/docs/index.html).
To generate the documentation, run:
```sh
@ -122,13 +61,13 @@ The documentation will be available in the `doxygen-doc/docs` directory.
## 👨‍💻 Contributing
Contributions are welcome!
Contributions are welcome!
Please read the [CONTRIBUTING.md](CONTRIBUTING.md) file for guidelines on how to contribute to this project.
### Contributors
<a href="https://github.com/EnderIce2/Fennix/graphs/contributors">
<img src="https://contrib.rocks/image?repo=EnderIce2/Fennix" />
<img src="https://contrib.rocks/image?repo=EnderIce2/Fennix" />
</a>
## 📃 License