# LXC LXC is a compiler to compile .lx files into .c files. LX is a custom langauge that I have developed. It is currently in development. ### Build ##### Windows Requirements: - Git `winget install git.git` - Ninja(recommended) `winget intall ninja-build.ninja` - Windows SDK, can be downloaded via [VS22 C++ software development](https://visualstudio.microsoft.com/thank-you-downloading-visual-studio/?sku=Community&channel=Release&version=VS2022&source=VSLandingPage&passive=false&cid=2030) Clone the repository and install all git-submodules. ```powershell git clone https://github.com/PashaBibko/LXC.git LXC cd LXC git submodule update --init --recursive ``` Build the project, Ninja is recommended for use on windows. VS22 can be used but requires additional setup. The outputted binaries are available in the root directory. ```powershell mkdir build cd build cmake .. -G Ninja cmake --build . ``` ##### UNIX based Clone the repository and install all git-submodules. ```bash git clone https://github.com/PashaBibko/LXC.git LXC cd LXC git submodule update --init --recursive ``` Builds the project files, the outputted binaries will be available in the root directory. ```bash mkdir build cd build cmake .. cmake --build . ``` ##### Other Operating systems that are not listed above are not supported. To run the code you will have to modify it yourself. All code that should need to be changed is within the [Common modules](https://github.com/PashaBibko/LXC/tree/main/Common/modules). ### Example use Some examples of LX code can be found within the [examples folder](https://github.com/PashaBibko/LXC/tree/main/examples). To compile them you will have to set the file location within [LXC.cpp](https://github.com/PashaBibko/LXC/blob/main/LXC/LXC.cpp), this is temporary and in the future you will be able to call from the command line.