Author Topic: How to compile the MGDev Source  (Read 3899 times)

Piper802

  • Posts: 56
  • Turrets: +2/-2
How to compile the MGDev Source
« on: June 13, 2009, 01:33:19 am »
My friend wants me to compile the MGDev source and I was following this guide here:
http://projects.mercenariesguild.net/projects/mgdev/wiki/Getthesource

I'm trying to use the MSysGit method. So far I've installed MSysGit and I ran the command
Code: [Select]
git clone git://git.mercenariesguild.net/mgdev.git mgdev
It downloaded the source to the folder MGDev, but when I run "make" in MSys it returns this error:
Code: [Select]
$ make
make[1]: Entering directory `/home/Owner/mgdev'

Building Tremulous in build/release-mingw32-x86:
  PLATFORM: mingw32
  ARCH: x86
  VERSION: 1.1.0
  COMPILE_PLATFORM: mingw32
  COMPILE_ARCH: x86
  CC: gcc

  CFLAGS:
    -MMD
    -Wall
    -fno-strict-aliasing
    -Wimplicit
    -Wstrict-prototypes
    -DUSE_ICON
    -DWINVER=0x501
    -DUSE_OPENAL
    -DUSE_OPENAL_DLOPEN
    -DUSE_CURL
    -DCURL_STATICLIB
    -m32
    -Isrc/SDL12/include
    -DUSE_MUMBLE
    -DUSE_VOIP
    -DFLOATING_POINT
    -DUSE_ALLOCA
    -Isrc/libspeex/include
    -DUSE_LOCAL_HEADERS
    -DPRODUCT_VERSION="1.1.0"
    -DNDEBUG
    -O3
    -march=i586
    -fno-omit-frame-pointer
    -ffast-math
    -falign-loops=2
    -funroll-loops
    -falign-jumps=2
    -falign-functions=2
    -fstrength-reduce

  LDFLAGS:
/bin/sh.exe: -c: line 1: syntax error near unexpected token `;'
/bin/sh.exe: -c: line 1: `for i in ;  do  echo "    $i";  done'
make[1]: [targets] Error 2 (ignored)

  LIBS:
    -lws2_32
    -lwinmm

  Output:
    build/release-mingw32-x86/tremded.x86.exe
    build/release-mingw32-x86/base/cgamex86.dll
    build/release-mingw32-x86/base/gamex86.dll
    build/release-mingw32-x86/base/uix86.dll
    build/release-mingw32-x86/base/vm/cgame.qvm
    build/release-mingw32-x86/base/vm/game.qvm
    build/release-mingw32-x86/base/vm/ui.qvm

make[2]: Entering directory `/home/Owner/mgdev'
LD build/release-mingw32-x86/tremded.x86.exe
build/release-mingw32-x86/ded/net_ip.o(.text+0x335d):net_ip.c: undefined reference to `gai_strerror'
make[2]: *** [build/release-mingw32-x86/tremded.x86.exe] Error 1
make[2]: Leaving directory `/home/Owner/mgdev'
make[1]: *** [targets] Error 2
make[1]: Leaving directory `/home/Owner/mgdev'
make: *** [release] Error 2
I think it could just be a syntax error in the source, but then again I'm no expert.
Any suggestions on how to fix it? Thanks in advance.
« Last Edit: June 13, 2009, 01:35:34 am by Piper802 »

gimhael

  • Posts: 546
  • Turrets: +70/-16
Re: How to compile the MGDev Source
« Reply #1 on: June 13, 2009, 07:48:07 am »
gai_strerror should be #defined in ws2tcpip.h. It is a macro that expands to gai_strerrorA, when the linker still has the name gai_strerror then the compiler didn't include the header file correctly.
Unfortunately your log doesn't show the compiler step, only the linker step. I think the real error is in the compile step (try to delete the net_ip.o file and re-make - I guess there is a warning about the missing header file....)

Amanieu

  • Posts: 647
  • Turrets: +135/-83
    • Amanieu
Re: How to compile the MGDev Source
« Reply #2 on: June 13, 2009, 09:46:04 am »
Update your mingw runtime (see mingw download site)
Quote
< kevlarman> zakk is getting his patches from shady frenchmen on irc
< kevlarman> this can't be a good sign :P