Windows Installation

From ENIGMA

(Difference between revisions)
Jump to: navigation, search
m (MSYS2)
m (Source Code (Advanced))
Line 22: Line 22:
* First, you will want to download and install MSYS2 by following these instructions: http://www.msys2.org/
* First, you will want to download and install MSYS2 by following these instructions: http://www.msys2.org/
:- '''NOTE:''' The x86_64 download button will support compilation of both 32-bit and 64-bit games.
:- '''NOTE:''' The x86_64 download button will support compilation of both 32-bit and 64-bit games.
 +
 +
=== Dependencies ===
* Reopen <code>MSYS2 MinGW 64-bit</code> to use the included Pacman to obtain the packages used by ENIGMA for building games, which includes things like OpenAL. You will also need to install Git using Pacman so you can clone the ENIGMA source code from GitHub to complete this installation.
* Reopen <code>MSYS2 MinGW 64-bit</code> to use the included Pacman to obtain the packages used by ENIGMA for building games, which includes things like OpenAL. You will also need to install Git using Pacman so you can clone the ENIGMA source code from GitHub to complete this installation.
:- '''NOTE:''' You do not need to type the entire command below. Both Command Prompt and MSYS2 have a right-click menu option that allows you to just paste the command from this wiki page.
:- '''NOTE:''' You do not need to type the entire command below. Both Command Prompt and MSYS2 have a right-click menu option that allows you to just paste the command from this wiki page.
:- '''NOTE:''' These packages are for 64 bit, if you want 32 bit then you need to install the same packages but replace <code>x86_64</code> with <code>i686</code> in the name of each package.
:- '''NOTE:''' These packages are for 64 bit, if you want 32 bit then you need to install the same packages but replace <code>x86_64</code> with <code>i686</code> in the name of each package.
:- The Pacman command you will need to run is: <syntaxhighlight lang="bash">pacman -S base-devel git mingw-w64-x86_64-toolchain mingw-w64-x86_64-boost mingw-w64-x86_64-openal mingw-w64-x86_64-dumb mingw-w64-x86_64-libvorbis mingw-w64-x86_64-libogg mingw-w64-x86_64-flac mingw-w64-x86_64-mpg123 mingw-w64-x86_64-libsndfile mingw-w64-x86_64-libgme mingw-w64-x86_64-sfml mingw-w64-x86_64-gtk2 mingw-w64-x86_64-zlib mingw-w64-x86_64-libffi mingw-w64-x86_64-box2d mingw-w64-x86_64-bullet</syntaxhighlight>
:- The Pacman command you will need to run is: <syntaxhighlight lang="bash">pacman -S base-devel git mingw-w64-x86_64-toolchain mingw-w64-x86_64-boost mingw-w64-x86_64-openal mingw-w64-x86_64-dumb mingw-w64-x86_64-libvorbis mingw-w64-x86_64-libogg mingw-w64-x86_64-flac mingw-w64-x86_64-mpg123 mingw-w64-x86_64-libsndfile mingw-w64-x86_64-libgme mingw-w64-x86_64-sfml mingw-w64-x86_64-gtk2 mingw-w64-x86_64-zlib mingw-w64-x86_64-libffi mingw-w64-x86_64-box2d mingw-w64-x86_64-bullet</syntaxhighlight>
 +
 +
=== Get ENIGMA ===
* Use the change directory command (<code>cd path/to/directory</code>) to change MSYS2 to the directory you want ENIGMA installed in.  
* Use the change directory command (<code>cd path/to/directory</code>) to change MSYS2 to the directory you want ENIGMA installed in.  
* Then simply run this command: <code>git clone https://github.com/enigma-dev/enigma-dev.git</code>
* Then simply run this command: <code>git clone https://github.com/enigma-dev/enigma-dev.git</code>
Line 33: Line 37:
* Now simply run <code>make</code> to build the compiler and its backend into compileEGMf.dll, which is used by the [[CLI]] and any IDE for ENIGMA.
* Now simply run <code>make</code> to build the compiler and its backend into compileEGMf.dll, which is used by the [[CLI]] and any IDE for ENIGMA.
* '''Optional:''' You can then run <code>make emake</code> if you also intend to use the [[CLI]] for building games.
* '''Optional:''' You can then run <code>make emake</code> if you also intend to use the [[CLI]] for building games.
 +
 +
=== Configure an IDE ===
* Finally, you will want [[LateralGM]] for editing games which you can use by installing Java and then download <code>lateralgm.jar</code> and <code>enigma.jar</code> from: [[Install:Extra Packages]]. You will also need <code>jna.jar</code> from: https://github.com/java-native-access/jna#jna
* Finally, you will want [[LateralGM]] for editing games which you can use by installing Java and then download <code>lateralgm.jar</code> and <code>enigma.jar</code> from: [[Install:Extra Packages]]. You will also need <code>jna.jar</code> from: https://github.com/java-native-access/jna#jna
:- '''NOTE:''' You will want to download <code>jna.jar</code> not <code>jna-platform.jar</code> which is the same thing, but bigger because it includes helper methods that LateralGM does not require or use.
:- '''NOTE:''' You will want to download <code>jna.jar</code> not <code>jna-platform.jar</code> which is the same thing, but bigger because it includes helper methods that LateralGM does not require or use.

Revision as of 22:23, 12 May 2018

The official logo of Windows based operating systems and environments.

This primary method of installing is a self-extracting 7z executable which we created for high convenience and portability. It's an all-inclusive zip and provides you with everything you need to run ENIGMA.

Once the file is extracted just click ENIGMA.exe inside the folder and it will run ENIGMA/LGM. If you want to create a desktop shortcut right-click on ENIGMA.exe and goto Send To->Desktop. The first time you run ENIGMA.exe it will automatically download the ENIGMA repo for you before running LGM so wait for the installation to finish.

That should be it!

Note: You need to run the self-extracting zip and the enigma.exe with administrative privileges before and after setup so the application can access AppData to output temporary build files, simply right click the file and select "Run as Administrator" on Windows Vista or later.


Contents

Source Code (Advanced)

For those looking for something a little more hands-on, you can set up your own toolchain for ENIGMA.

MSYS2

These steps will help you configure an ENIGMA setup using the modern MSYS2 project. This setup better facilitates both 32-bit and 64-bit compilation.

- NOTE: The x86_64 download button will support compilation of both 32-bit and 64-bit games.

Dependencies

- NOTE: You do not need to type the entire command below. Both Command Prompt and MSYS2 have a right-click menu option that allows you to just paste the command from this wiki page.
- NOTE: These packages are for 64 bit, if you want 32 bit then you need to install the same packages but replace x86_64 with i686 in the name of each package.
- The Pacman command you will need to run is:
pacman -S base-devel git mingw-w64-x86_64-toolchain mingw-w64-x86_64-boost mingw-w64-x86_64-openal mingw-w64-x86_64-dumb mingw-w64-x86_64-libvorbis mingw-w64-x86_64-libogg mingw-w64-x86_64-flac mingw-w64-x86_64-mpg123 mingw-w64-x86_64-libsndfile mingw-w64-x86_64-libgme mingw-w64-x86_64-sfml mingw-w64-x86_64-gtk2 mingw-w64-x86_64-zlib mingw-w64-x86_64-libffi mingw-w64-x86_64-box2d mingw-w64-x86_64-bullet

Get ENIGMA

- If you are not familiar with git then you may simply download an archive from: https://github.com/enigma-dev/enigma-dev/archive/master.zip
- NOTE: If you use the archive method then you will not be able to use git to update to the latest source code version later and will have to manually redownload it.

Configure an IDE

- NOTE: You will want to download jna.jar not jna-platform.jar which is the same thing, but bigger because it includes helper methods that LateralGM does not require or use.
- If any of the following directories don't exist, use mkdir directoryname to create them.
- lateralgm.jar goes in enigma-dev/lateralgm.jar
- enigma.jar goes in enigma-dev/plugins/enigma.jar
- jna.jar goes in enigma-dev/plugins/shared/jna.jar
- This method of launching LGM using MSYS2 is recommended over double-clicking the jar because the environment will be configured correctly so that it includes MinGW for ENIGMA to find it.


Personal tools
Namespaces
Variants
Actions
Navigation
ENIGMA
Other
Toolbox