- as (The GNU assembler)
- ld (The GNU linker)
The project uses CMake to compile the project
Make sure that the requirements are met.
You need to install build-essential to obtain the gnu linker, assembler and gcc.
sudo apt-get update
sudo apt-get install cmake build-essential
Clone this github repository, and make a folder named 'build' inside the project root folder.
git clone https://github.com/GnikDroy/brainfreeze
mkdir build
Then, we can compile the compiler here.
cd build
cmake ..
make
This will create a new folder named bin
inside the build folder.
The compiled compiler should be inside.
After compiling the compiler, we can compile other bf source files! ;)
cd bin
./brainfreeze -h
Notice that there are some examples in the examples
directory. You can use them for testing. I have made sure to use open source code or given proper credits to the owners of the code.
The project uses Doxygen for managing its documentation.
If you wish to read the documentation, install doxygen.
sudo apt-get install doxygen-gui
You might also need to install graphviz
for visualizing the relations.
sudo apt-get install graphviz
You can create the docs by running doxygen
inside the root folder.
All the documentation will be created under the docs
folder.
Currently this compiler does not implement much optimization techniques. It may be added in the future.
I used the project image from here.