Skip to content
E.xtremely M.odular A.PI
C++ Makefile
Branch: master
Clone or download
Latest commit dd668ca Jul 19, 2017
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
Compiler Apparently We Do Need The System Jul 18, 2017
Main
Plugins Basic Drawing And Navagation Done Jul 19, 2017
.gitignore Adjust gitIgnore For Commit Four Back Jul 16, 2017
CONTRIBUTING.md Added Initial Contributing Directives Jun 20, 2017
LICENSE Initial commit May 19, 2017
Makefile Add Windows Option Jul 18, 2017
README.md Included SMFL In Readme and Compiler.cpp Jul 17, 2017

README.md

EMA

E.xtremely M.odular A.PI

How to compile this project:

If this is being compiled on the Bash For Windows Subsystem, make sure to first follow these steps.

This project is dependent on the libreadline-dev package and SFML (or equivalent). On Debian-based systems, or similar, use: sudo apt-get install libreadline-dev libsfml-dev

First, clone the repo. From inside EMA/, run the command "make" (or "make linux" if not compile on the Bash For Windows Subsystem), this will build the PluginManager/Compiler, which will assist in building the rest of the game.

  • Note: This will only compile with versions of gcc that support c++17.

Now that you have the compiler, you can use the help menu in that interface to learn about the various commands that you can use. In short: enable <pluginName> for whatever plugins you want to use, save that list so you don't have to enable all the plugins you want every time, compile, then exit.


Alternatively, one can create their own compile command in the structure of:

g++ -Wall -Wextra -pedantic -std=c++1y <Main/Internal Dependencies> <Plugin Dependencies> -o main

...making sure that "Compiler/pluginTypes.h" has/includes all types defined in desired plugins, for example use this file:

    #ifndef SIM_PLUGIN_TYPES
    #define SIM_PLUGIN_TYPES 1
    #include "../Plugins/datTest/datTestTypes.h"
    #endif

...with this command:

g++ -Wall -Wextra -pedantic -std=c++1y Main/main.cpp Main/dataStructure.cpp Main/Entity.cpp Plugins/datTest/datTestTypes.cpp -o main
You can’t perform that action at this time.