updating readmes

This commit is contained in:
2023-12-09 23:18:28 +01:00
parent 327374d53b
commit a5e4b41ceb
2 changed files with 20 additions and 25 deletions

View File

@@ -16,11 +16,9 @@ The goal of this version is to provide a light, fast, and modern graphical tool
## 🖥️ Installation ## 🖥️ Installation
### Dependencies ### Dependencies
You first need to install the proper dependencies for your operating-system. You first need to install the proper dependencies for your operating-system.
#### 🐧 Linux #### 🐧 Linux
Here are a few common cases for different Linux distributions: Here are a few common cases for different Linux distributions:
<details> <details>
@@ -41,7 +39,6 @@ sudo apt install libsdl2-2.0-0 libsdl2-dev build-essential
</details> </details>
#### 🍎 macOS #### 🍎 macOS
[MacroLibX](#) on macOS requires [SDL2](#) and [MoltenVK](https://github.com/KhronosGroup/MoltenVK). You can install both using the [Homebrew](https://brew.sh) package manager: [MacroLibX](#) on macOS requires [SDL2](#) and [MoltenVK](https://github.com/KhronosGroup/MoltenVK). You can install both using the [Homebrew](https://brew.sh) package manager:
```sh ```sh
brew install molten-vk brew install molten-vk
@@ -49,11 +46,9 @@ brew install SDL2
``` ```
### 🪟 Windows ### 🪟 Windows
To build on Windows you may need to use the [xmake](https://xmake.io) build. [Here's](./XMAKE_BUILD.md) how you can use it. To build on Windows you may need to use the [xmake](https://xmake.io) build. [Here's](./XMAKE_BUILD.md) how you can use it.
### Clone and Build ### Clone and Build
Finally, you can clone the Git repository. When inside it, run the GNU `make` command to compile MacroLibX. Finally, you can clone the Git repository. When inside it, run the GNU `make` command to compile MacroLibX.
```bash ```bash
git clone https://github.com/420verfl0w/MacroLibX.git git clone https://github.com/420verfl0w/MacroLibX.git
@@ -61,13 +56,7 @@ cd MacroLibX
make make
``` ```
If you want to build using GCC you can add `TOOLCHAIN=gcc` to your `make` command
```bash
make TOOLCHAIN=gcc
```
## 🔨 Compile your project ## 🔨 Compile your project
To compile your project with MacroLibX, you just provide the shared library path in your compilation/linking command: To compile your project with MacroLibX, you just provide the shared library path in your compilation/linking command:
```sh ```sh
@@ -80,16 +69,22 @@ And you can enjoy your project
<img src="./res/screenshot_test.png" alt="drawing" width="400"/> <img src="./res/screenshot_test.png" alt="drawing" width="400"/>
</p> </p>
### ⚠️ Troubleshooting ## ⚙️ Some compilation configurations
#### If you run into glitches when writing or reading pixels from images ### 📦 Compile mode
By default the mlx is built in release mode but you can switch to debug by using `make DEBUG=true`.
You need to add `IMAGES_OPTIMIZED=false` to your `make` command: ### 🛠️ Set the toolcha
If you want to use `GCC` to build the mlx you can use `make TOOLCHAIN=gcc`
```sh ### ⚠️⚠️⚠️ 🖼️ Image optimisations ⚠️⚠️⚠️
# In your cloned environment, inside the MacroLibX folder If you run into glitches when writing or reading pixels from images you can turn off images optimisations by using `make IMAGES_OPTIMIZED=false`.
make IMAGES_OPTIMIZED=false
``` ### 🖥️ Force the integrated GPU (not recommended)
You can force the mlx to use your integrated GPU using `make FORCE_INTEGRATED_GPU=true`. Note that there are a lot of chances that your application crashes by using that.
### 💽 Dump the graphics memory
The mlx can dump it's graphics memory use to json files every two seconds by enabling this option `make GRAPHICS_MEMORY_DUMP=true`.
## License ## License

View File

@@ -1,5 +1,5 @@
# 🏗️ xmake build # 🏗️ xmake build
To build on Windows (if you don't use [WSL](https://learn.microsoft.com/en-us/windows/wsl/install)) or on other OS, the MacroLibX uses [xmake](https://xmake.io), a build system which will download and compile all dependencies it won't find on your computer. To build on Windows (if you don't use [WSL](https://learn.microsoft.com/en-us/windows/wsl/install)), the MacroLibX uses [xmake](https://xmake.io), a build system which will download and compile all dependencies it won't find on your computer.
## 💾 Install xmake ## 💾 Install xmake
You can find how to install it on your system [here](https://xmake.io/#/guide/installation). Note that you can also download a [portable version](https://github.com/xmake-io/xmake/releases) of xmake if you wish not to install it. You can find how to install it on your system [here](https://xmake.io/#/guide/installation). Note that you can also download a [portable version](https://github.com/xmake-io/xmake/releases) of xmake if you wish not to install it.
@@ -11,13 +11,13 @@ Just as the Makfile build system, you can configure how xmake should build the M
You can configure xmake to build the mlx in debug mode or in release mode (release mode is enabled by default). To do so you can use `xmake config --mode=debug` or `xmake config --mode=release`. You can configure xmake to build the mlx in debug mode or in release mode (release mode is enabled by default). To do so you can use `xmake config --mode=debug` or `xmake config --mode=release`.
### 🛠️ Set the toolchain ### 🛠️ Set the toolchain
To change the compilation toolchain using `xmake config --toolchain=[gcc|clang|...]` To change the compilation toolchain you can use `xmake config --toolchain=[gcc|clang|...]`
### 🖼️ Image optimisations ### ⚠️⚠️⚠️ 🖼️ Image optimisations ⚠️⚠️⚠️
If you run into glitches when writing or reading pixels from images you can turn off image optimisations using `xmake config --images_optimized=n`. If you run into glitches when writing or reading pixels from images you can turn off images optimisations by using `xmake config --images_optimized=n`.
### 🖥️ Force the use of the integrated GPU (not recommended) ### 🖥️ Force the integrated GPU (not recommended)
You can force the mlx to use your integrated GPU using `xmake config --force_integrated_gpu=y`. Note that there are a lot of chances that your application crashes using that. You can force the mlx to use your integrated GPU using `xmake config --force_integrated_gpu=y`. Note that there are a lot of chances that your application crashes by using that.
### 💽 Dump the graphics memory ### 💽 Dump the graphics memory
The mlx can dump it's graphics memory use to json files every two seconds by enabling this option `xmake config --graphics_memory_dump=y`. The mlx can dump it's graphics memory use to json files every two seconds by enabling this option `xmake config --graphics_memory_dump=y`.
@@ -44,4 +44,4 @@ You should now be able to open the project file with the tool of your choice.
Enjoy you project built with the mlx Enjoy you project built with the mlx
<p align="center"> <p align="center">
<img src="./res/screenshot_test_windows.png" alt="drawing" width="400"/> <img src="./res/screenshot_test_windows.png" alt="drawing" width="400"/>
</p> </p>