fractorium/Data/BuildGuideQtCreator.md
2016-03-01 18:10:37 -08:00

3.6 KiB

#Building Guide for Fractorium Using MSVC2013 and Qt Creator (64 bit) ##Requirements

Install git.

Install Microsoft Visual Studio 2013 or later, then install the latest updates.

Install Qt for Windows 64-bit (VS 2013) 5.4 or later (http://www.qt.io/download/).

##Get this project Open up the Visual Studio x64 Native Tools Command Prompt

Create a new folder in your development area named fractorium:

mkdir fractorium

cd fractorium

git clone https://github.com/mfeemster/fractorium.git

##Prerequisites There are six prerequisite dependencies. Two of them must be downloaded manually:

libjpeg

tbb (get the open source download)

Extract them into the folder you created such that they are arranged like so:

[fractorium]
│  
├─libjpeg
├─tbb

Go into the fractorium folder and run this script which will get the rest of the prerequisites from git and build them:

cd fractorium

makedeps.bat

This will download and build glm libpng libxml zlib. You will have a folder structure like this:

[YOUR ROOT FOLDER]
│  
├─glm
├─libjpeg
├─libpng
├─libxml2
├─tbb
└─fractorium
    │
    ├─Deps
        │
        ├─libjpeg.lib
        ├─libpng.lib
        ├─libxml2.lib
        ├─libxml2.dll
        ├─tbb.dll
        ├─tbb.lib
        ├─zlib.lib

##Begin build with Qt Creator: Open the Qt Project fractorium/main.pro using Qt Creator with the default config of Desktop Qt [version] MSVC2013 64bit
Select shadow build in Edit build configuration for both Debug and Release

Switch to Release configuration for all projects and build main.pro.

The outputs will be placed in fractorium\Bin\release several minutes later if no error occurs.

##Begin build with Visual Studio: Open the file Fractorium.sln under Builds/MSVC/2013

Set the configuration to release, and build all.

The outputs will be the same and will be placed in:

Bin/x64/Release

Regardless of the IDE chosen, the output folder will have these contents:

Ember.dll
Ember.exp
Ember.lib
emberanimate.exe
EmberCL.dll
EmberCL.exp
EmberCL.lib
embergenome.exe
emberrender.exe
fractorium.exe

To run it, just double click any of the .exe files.

To run it on a machine which does not have Qt installed, put the .exe and .dll files above along with these files together in one folder

Qt5.5.1\5.5\msvc2013_64\bin\Qt5Core.dll
Qt5.5.1\5.5\msvc2013_64\bin\Qt5Gui.dll
Qt5.5.1\5.5\msvc2013_64\bin\Qt5Widgets.dll
Qt5.5.1\5.5\msvc2013_64\plugins\platforms\qwindows.dll  (put in folder "platforms")
Deps\libxml2.dll
Deps\tbb.dll
fractorium\Data\dark.qss
fractorium\Data\flam3-palettes.xml

To run on a computer without Visual Studio 2013, these files also need to be in the folder:

MSVC2013\VC\redist\x64\Microsoft.VC120.CRT\msvcp120.dll
MSVC2013\VC\redist\x64\Microsoft.VC120.CRT\msvcr120.dll
MSVC2013\VC\redist\x64\Microsoft.VC120.CRT\vccorlib120.dll

or you can install Visual C++ Redistributable Packages for Visual Studio 2013 (64 bit)

##Final file structure for distribution

[YOUR FOLDER]
│  dark.qss
│  Ember.dll
│  emberanimate.exe
│  EmberCL.dll
│  embergenome.exe
│  emberrender.exe
│  flam3-palettes.xml
│  fractorium.exe
│  libxml2.dll
│  Qt5Core.dll
│  Qt5Gui.dll
│  Qt5OpenGL.dll
│  Qt5Widgets.dll
│  tbb.dll
│ 
│  vccorlib120.dll   (optional)
│  msvcp120.dll      (optional)
│  msvcr120.dll      (optional)
│  
└─platforms
        qwindows.dll