Archive for March, 2009

HOWTO build DXX-Rebirth for Windows with MSYS/MinGW

by plouj on Mar.07, 2009, under HOWTO, games

Introduction

In this post I’ll document the steps I had to take to build DXX-Rebirth (a modernized Descent game engine) for Windows using MSYS and MinGW.

MinGW, MSYS

FromĀ  Pantokrator’s blog:

  • install MinGW
    • choose a lowercase install path: c:\mingw
    • choose to download and install current version
    • enable g++ (for physfs)
  • install MSYS
  • install msysDTK

SDL and SDL_mixer

Also fromĀ  Pantokrator’s blog:

  • download the SDL source
  • in the MSYS shell, compile it with
./configure --prefix=/mingw && make && make install
  • download the SDL_mixer source and in a MSYS shell, build it with the same command:
./configure --prefix=/mingw && make && make install

PhysicsFS

  • Compile with the same command again:
./configure --prefix=/mingw && make && make install

SCons and Python

From Globulation2 MinGW instructions:

PATH=$PATH:/c/Python26:/c/Python26/Scripts
  • to the end of /etc/profile in MSYS so that SCons can run from the MSYS shell.

Subversion

DXX-Rebirth

  • checkout DXX-Rebirth from https://dxx-rebirth.svn.sourceforge.net/svnroot/dxx-rebirth
  • change the SConstruct script to call sdl-config as ’sh sdl-config ‘:
...
Flags and stuff for all platforms...
env.ParseConfig('sh sdl-config --cflags')
env.ParseConfig('sh sdl-config --libs')
env.Append(CPPFLAGS = ['-Wall', '-funsigned-char'])
...
  • finally, in the MSYS shell, built with:
scons sdlmixer=1

Final Remarks

I had trouble with the latest version of PhysicsFS (1.1.1) because it uses cmake. For some reason it failing to find some prerequisites in MSYS. I also had trouble with version 1.0.1 of PhysicsFS (this is the version the official d1x-rebirth_v0.55.1-win.zip is built with) because the built failed with the following error:

warning: cannot find entry symbol _DllMainCRTStartup@12; defaulting to 00401000
...
undefined reference to WinMain@16

If you notice any problems or mistakes in this post, please mention them in the comments.

1 Comment :, , , , , , , , , , , , , , , , more...

Looking for something?

Use the form below to search the site:

Still not finding what you're looking for? Drop a comment on a post or contact us so we can take care of it!

Visit our friends!

A few highly recommended friends...