diff --git a/INSTALL b/INSTALL index b53b274e..64d475cd 100644 --- a/INSTALL +++ b/INSTALL @@ -6,10 +6,9 @@ These are build & install instructions for Dust Racing 2D. Source code =========== -The source tree includes source code for the track editor and -the game itself. The game uses an 2D engine called MiniCore -written by Jussi Lind. The code is "documented" by using -Doxygen tags. +The source tree includes source code for the track editor and the game itself. + +The code is "documented" with Doxygen tags. The source tree layout: @@ -20,11 +19,21 @@ src/game/STFH/ : Sound Toolkit From Hell. src/editor/ : Source files for the track editor. src/common/ : Shared files between the editor and the game. src/images/ : Some SVG-images used as the source for final images. + +Data directory structure: + data/ : Data mapping and configuration files. +data/fonts/ : Font used by the game. +data/icons/ : Icon files for game and editor. data/images/ : Image files and textures loaded by the game. data/levels/ : Level data. -data/shaders/ : GLSL shaders. -packaging/ : Example packaging for Ubuntu/Debian. +data/models/ : 3D models. +data/sounds/ : Sound files. +data/translations/ : Released Qt translation files. + +Other: + +packaging/windows/ : NSIS packaging for Windows. Build systems ============= @@ -36,8 +45,9 @@ Toolchains GCC/MinGW and Clang are the only "officially" supported toolchains on Linux. -Windows builds are done in a Docker container with MXE (web: mxe.cc). The build script +Windows builds are done in a Docker container with MXE (http://mxe.cc). The build script also generates automatically an NSIS Windows installer and a ZIP-archive. + See scripts/buildWindowsInstaller.sh and scripts/mxeWindowsBuild.sh. Building the project with Microsoft Visual C++ 2013 also works, but no automatic @@ -64,57 +74,51 @@ Development build (the game can be run without installing anything): - You might need to install also these manually depending on your system - qttools5-dev - libqt5opengl5-dev + 2) Install OpenAL development files (libopenal-dev on Debian/Ubuntu). + 3) Install Vorbis development files (libvorbis-dev on Debian/Ubuntu). -4) Install CMake (cmake on Debian/Ubuntu). -5) Go to the source directory and run: -$ mkdir build -$ cd build -$ cmake .. +4) Install CMake (cmake on Debian/Ubuntu). -This runs CMake that generates the makefiles. +5) Go to the source directory and run: -You can also use Qt Creator to open the top-level CMakeLists.txt and build inside Qt Creator. -There's also a convenience configure script which is just a wrapper for cmake. +`$ mkdir build && cd build` -Anyway, if everything went ok with cmake, run: +`$ cmake ..` -$ make +`$ make` This will build the editor and the game binaries. Run the game: -$ ./dustrac-game +`$ ./dustrac-game` Optionally run the track editor: -$ ./dustrac-editor +`$ ./dustrac-editor` Run unit tests: -$ ctest +`$ ctest` Release build (in this example game installs under /usr): -------------------------------------------------------- -$ mkdir build -$ cd build -$ cmake .. -DReleaseBuild=ON -DCMAKE_INSTALL_PREFIX=/usr +`$ mkdir build && cd build` -This runs CMake that generates the makefiles. -If everything went ok, run: +`$ cmake .. -DReleaseBuild=ON -DCMAKE_INSTALL_PREFIX=/usr` -$ make +`$ make` This will build the editor and the game binaries. Install the binaries and data files: -$ sudo make install +`$ sudo make install` -This installs also the desktop files so Dust Racing +This installs also the desktop files so Dust Racing 2D should appear in your application menu. Cross-compiling for Windows in Docker with MXE on Linux @@ -122,7 +126,7 @@ Cross-compiling for Windows in Docker with MXE on Linux 1) Install Docker -2) $ ./scripts/buildWindowsInstaller.sh +2) `$ ./scripts/buildWindowsInstaller.sh` CPack ===== @@ -132,7 +136,7 @@ e.g. Debian packages. After a successful build with ReleaseBuild=ON run CPack: -$ cpack -G DEB +`$ cpack -G DEB` This will generate a Debian package. @@ -148,9 +152,16 @@ The project has been successfully compiled and executed with MSVC with the follo * MS Visual Studio 2013 for Desktop Windows 1) Download and build Vorbis libraries and OpenAL Soft with the same toolchain + 2) Open the top-level CMakeLists.txt in Qt Creator, configure and build + 3) Copy the runtime files, like OpenAL DLL, to the same directory with the game binary +Jenkins CI +========== + +Jenkinsfile includes pipelines configuration for Jenkins CI. + For packagers ============= @@ -168,6 +179,3 @@ CMAKE_INSTALL_PREFIX usually defaults to /usr/local and can be changed by giving, for example, -DCMAKE_INSTALL_PREFIX=/usr to cmake (or to the configure script). - --- Jussi Lind -