Author Topic: Compiling Tremulous on Windows using MinGW [Updated 2017-10-03]  (Read 60222 times)

cron

  • Donators
  • *
  • Posts: 197
  • Turrets: +22/-22
    • GrangerHub
Compiling Tremulous on Windows using MinGW [Updated 2017-10-03]
« on: December 05, 2010, 03:39:47 pm »
First, download and install 7-Zip. You'll need it to decompress several files we'll be using.
Then follow these steps to compile the Tremulous client on Windows using MinGW:

1. Download and install the newest mingw-get-setup.exe:
https://sourceforge.net/projects/mingw/files/Installer/
  • Select 'Download latest repository catalogues' and install to: C:\MinGW
  • Select components to install: 'mingw32-base', 'mingw32-gcc-g++', and 'msys-base'
  • When complete, add the line C:\MinGW\bin; in to MS Windows' PATH environment variable

** Note: Msys uses a file & folder/directory hierarchy that is separate from the OS's. Edit the file C:\MinGW\msys\1.0\bin\fstab to add any folder locations that you may want mounted. See the 'Getting Started' guide for more info. **
   
2. Download the source for libcURL from curl.haxx.se and build it :
https://curl.haxx.se/latest.cgi?curl=zip

Notes to flesh this out later:  https://web.archive.org/web/20160108151213/http://curl.haxx.se:80/mail/lib-2007-02/0076.html
   
3. Download and install the OpenAL libraries that you would like to use:

Using the free LGPL licensed OpenAL Soft libraries (Needed for systems without OpenAL32.dll):
openal-soft-1.18.2-bin.zip
  • Extract the files with 7-Zip, copy the \include\AL directory to C:\MinGW\include\

 -OR-

Using the proprietary (non free) OpenAL 11 Core SDK:
OpenAL11CoreSDK.zip
  • Copy the contents of C:\Program Files\OpenAL 1.1 SDK\include\ to C:\MinGW\include\
  • Copy the contents of C:\Program Files\OpenAL 1.1 SDK\libs\ to C:\MinGW\lib\


4. Download the Git for Windows installer:
https://git-scm.com/download/win (64-bit or 32-bit, depending on your system)
  • Run the installer. Keep the default list of components to install. On the "Adjusting your PATH environment" step, choose the 2nd option: "Use Git from the Windows Command Prompt". Keep the default options for the rest of the setup steps.


    5. Start the MinGW Shell (MSys) by running C:\MinGW\msys\1.0\msys.bat (run as Administrator)


    6. Clone the newest Tremulous source code
       $ git clone https://github.com/darklegion/tremulous.git
    ( This will create a new directory  /home/<username>/tremulous/ which can be located on disk at C:\MinGW\msys\1.0\home\<username>\tremulous\ )



    7. Change directory to where the Tremulous source downloaded to:
       $ cd tremulous 


    8. Create a new file named Makefile.local which contains the following lines:

       CC=gcc - To specify that the GCC C compiler should be used.
       USE_CURL=1 - Uses cURL to add http downloading capability to the client.

       To build your own QVMs, add:
       BUILD_GAME_QVM=1

       -OR-

       BUILD_GAME_QVM=0
       INCLUDE=
       LIBRARY=


    9. Run make (NOT 'mingw32-make'):
       $ make


    If all went well, your new tremulous.x86.exe (and tremded), .DLLs and QVMs will be in build/release-mingw32-x86/, base/, and base/vm, respectively. If something went wrong, try to correct the issue and run make clean before running make again.

    ** If you built custom QVMs, make a new directory named VM in your %APPDATA%/Tremulous/base/ folder and copy the .qvm files into it **



    10. Copy the .exe(s) to where you have Tremulous installed
    (eg. C:\Program Files\Tremulous\ ), and copy the .DLLs in /base/ to C:\Program Files\Tremulous\base\ )

    Note:  Keep a backup of your old/original binaries, in case something goes wrong!


    Tip: Don't forget to add a firewall exception for it like I always do! :)




    Additional info: Ingar's "Building a custom MinGW/MSYS development environment" 

    Notes:
    If the compile fails, delete old build files with make clean:
          $ make clean

    Credits:
    BIG THANKS to Ingar for assistance, and to Risujin for his original post. Also thanks to gimhael for the CC=gcc fix.

    Notes:
    2011-09-24 : Added info about overwriting libeay32.dll
    2012-04-17 : Updated link for cURL and removed outdated 1.1 source info
    2012-04-18 : More cleanup and date format changes. Renamed title.
    2013-07-01 : Simplified instructions
    2017-10-03 : Updated URLs, use Git instead of SVN
« Last Edit: October 03, 2017, 06:59:19 am by cron »

Demolution

  • Posts: 1198
  • Turrets: +157/-64
Re: The NEW shorter and sweeter guide to compiling Tremulous on Windows
« Reply #1 on: December 05, 2010, 06:02:38 pm »
Sticky?

Clan [AC] - For all your air conditioning needs please visit: http://s1.zetaboards.com/AC_NoS/index/
my brain > your brain.
and i am VERY stupid.

DraZiLoX

  • Posts: 844
  • Turrets: +24/-24

cron

  • Donators
  • *
  • Posts: 197
  • Turrets: +22/-22
    • GrangerHub
Re: The NEW shorter and sweeter guide to compiling Tremulous on Windows
« Reply #3 on: December 06, 2010, 03:11:22 am »
Sticky?

I need people to test this out to make sure it all works first. :police:

Thorn

  • Guest
Re: The NEW shorter and sweeter guide to compiling Tremulous on Windows
« Reply #4 on: December 06, 2010, 08:37:13 am »
Will openal-soft use hardware if available?

Ingar

  • Tremulous Developers
  • *
  • Posts: 554
  • Turrets: +302/-7
    • Ingar's projects on the Web
Re: The NEW shorter and sweeter guide to compiling Tremulous on Windows
« Reply #5 on: December 06, 2010, 11:38:27 am »
I think there's a little misunderstanding: I suggested to use openal-soft instead of
the official implementation because I had problems with that when I used
it to compile other projects, I use openal-soft in my own devenv now.

For OpenAL support you need an OpenAL32.dll (either the official one, or the OpenAL-soft replacement).
I can't remember if those packages install the necessary development files (includes) as well.

cron

  • Donators
  • *
  • Posts: 197
  • Turrets: +22/-22
    • GrangerHub
The shorter & sweeter guide to compiling Tremulous on Windows
« Reply #6 on: December 07, 2010, 01:29:16 am »
Updated the info on OpenAL and gave the topic a new name. Thanks Ingar!
« Last Edit: December 07, 2010, 01:31:36 am by cron »

cron

  • Donators
  • *
  • Posts: 197
  • Turrets: +22/-22
    • GrangerHub
Re: The shorter & sweeter guide to compiling Tremulous on Windows
« Reply #7 on: December 24, 2010, 08:27:05 am »
I can only compile the GPP using GCC 3.4.5. Does this guide work for GCC 4.5.x on Windows?
I'll add instructions on setting up a separate MinGW install with older GCC if needed.
« Last Edit: December 28, 2010, 06:49:32 pm by cron »

Dr. A. Goon

  • Posts: 40
  • Turrets: +2/-0
Re: The shorter & sweeter guide to compiling Tremulous on Windows
« Reply #8 on: February 28, 2011, 04:22:16 pm »
I keep trying to compile and get a heap of errors that are obviously the creative commons license, but I can't find the file.

gimhael

  • Posts: 546
  • Turrets: +70/-16
Re: The shorter & sweeter guide to compiling Tremulous on Windows
« Reply #9 on: February 28, 2011, 05:24:27 pm »
Unfortunately on mingw filenames are case insensitive and usually the $PATH contains the current directory, so when make looks for the default C-compiler cc it finds the Creative Commons license file ./CC and tries to execute it !

Easy fix: run
Code: [Select]
make CC=gcc and it should pick up the proper C-compiler.

Dr. A. Goon

  • Posts: 40
  • Turrets: +2/-0
Re: The shorter & sweeter guide to compiling Tremulous on Windows
« Reply #10 on: March 06, 2011, 03:04:34 am »
Thanks for the CC fix.  I now get errors about wsiapi.h, even though I placed it in MinGw's include folder.
Code: [Select]
Javier@Javier-PC ~/tremulous
$ make CC=gcc
make[1]: Entering directory `/home/Javier/tremulous'

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

  CFLAGS:
    -DNO_VM_COMPILED
    -DNO_GZIP
    -Isrc/zlib
    -DUSE_LOCAL_HEADERS
    -DPRODUCT_VERSION="1.1.0_SVN2184"
    -MMD
    -DNDEBUG
    -O3

  CLIENT_CFLAGS:
    -DUSE_MUMBLE
    -DUSE_VOIP
    -DFLOATING_POINT
    -DUSE_ALLOCA
    -Isrc/libspeex/include

  SERVER_CFLAGS:
    -DUSE_VOIP

  LDFLAGS:

  LIBS:

  CLIENT_LIBS:

  Output:
    build/release-HPD-x86/tremded.x86
    build/release-HPD-x86/tremulous.x86
    build/release-HPD-x86/base/cgamex86.so
    build/release-HPD-x86/base/gamex86.so
    build/release-HPD-x86/base/uix86.so

make[2]: Entering directory `/home/Javier/tremulous'
DED_CC src/server/sv_client.c
DED_CC src/server/sv_ccmds.c
DED_CC src/server/sv_game.c
DED_CC src/server/sv_init.c
DED_CC src/server/sv_main.c
DED_CC src/server/sv_net_chan.c
DED_CC src/server/sv_snapshot.c
DED_CC src/server/sv_world.c
DED_CC src/qcommon/cm_load.c
DED_CC src/qcommon/cm_patch.c
DED_CC src/qcommon/cm_polylib.c
DED_CC src/qcommon/cm_test.c
DED_CC src/qcommon/cm_trace.c
DED_CC src/qcommon/cmd.c
DED_CC src/qcommon/common.c
DED_CC src/qcommon/cvar.c
DED_CC src/qcommon/files.c
DED_CC src/qcommon/md4.c
DED_CC src/qcommon/msg.c
DED_CC src/qcommon/net_chan.c
DED_CC src/qcommon/net_ip.c
In file included from src/qcommon/net_ip.c:35:0:
c:\mingw\bin\../lib/gcc/mingw32/4.5.2/../../../../include/wspiapi.h:67:11: error
: expected ')' before 'const'
c:\mingw\bin\../lib/gcc/mingw32/4.5.2/../../../../include/wspiapi.h:73:16: error
: expected ')' before '(' token
c:\mingw\bin\../lib/gcc/mingw32/4.5.2/../../../../include/wspiapi.h:82:11: error
: expected ')' before 'struct'
c:\mingw\bin\../lib/gcc/mingw32/4.5.2/../../../../include/wspiapi.h:96:1: error:
 expected '=', ',', ';', 'asm' or '__attribute__' before 'char'
c:\mingw\bin\../lib/gcc/mingw32/4.5.2/../../../../include/wspiapi.h:136:11: erro
r: expected ')' before 'const'
c:\mingw\bin\../lib/gcc/mingw32/4.5.2/../../../../include/wspiapi.h:180:11: erro
r: expected ')' before 'int'
c:\mingw\bin\../lib/gcc/mingw32/4.5.2/../../../../include/wspiapi.h:237:11: erro
r: expected ')' before 'const'
c:\mingw\bin\../lib/gcc/mingw32/4.5.2/../../../../include/wspiapi.h:315:11: erro
r: expected ')' before 'const'
c:\mingw\bin\../lib/gcc/mingw32/4.5.2/../../../../include/wspiapi.h:399:11: erro
r: expected ')' before 'WORD'
c:\mingw\bin\../lib/gcc/mingw32/4.5.2/../../../../include/wspiapi.h:449:11: erro
r: expected ')' before 'struct'
c:\mingw\bin\../lib/gcc/mingw32/4.5.2/../../../../include/wspiapi.h:482:10: erro
r: expected ')' before 'const'
c:\mingw\bin\../lib/gcc/mingw32/4.5.2/../../../../include/wspiapi.h:700:16: erro
r: expected ')' before '(' token
c:\mingw\bin\../lib/gcc/mingw32/4.5.2/../../../../include/wspiapi.h:873:11: erro
r: expected ')' before 'WORD'
c:\mingw\bin\../lib/gcc/mingw32/4.5.2/../../../../include/wspiapi.h:999:14: erro
r: expected ')' before 'const'
c:\mingw\bin\../lib/gcc/mingw32/4.5.2/../../../../include/wspiapi.h:1021:16: err
or: expected ')' before '(' token
c:\mingw\bin\../lib/gcc/mingw32/4.5.2/../../../../include/wspiapi.h:1046:11: err
or: expected ')' before 'struct'
make[2]: *** [build/release-HPD-x86/ded/net_ip.o] Error 1
make[2]: Leaving directory `/home/Javier/tremulous'
make[1]: *** [targets] Error 2
make[1]: Leaving directory `/home/Javier/tremulous'
make: *** [release] Error 2

Javier@Javier-PC ~/tremulous
$
*EDIT  More pertinently, how do I compile the code without wspiapi.h?
« Last Edit: March 06, 2011, 03:41:16 am by Dr. A. Goon »

gimhael

  • Posts: 546
  • Turrets: +70/-16
Re: The shorter & sweeter guide to compiling Tremulous on Windows
« Reply #11 on: March 06, 2011, 08:44:34 am »
I think the #include of wspiapi.h or ws2spi.h can be completely removed without problems.

{FN}BlueCelery2

  • Posts: 10
  • Turrets: +0/-0
Re: The shorter & sweeter guide to compiling Tremulous on Windows
« Reply #12 on: April 11, 2011, 06:35:04 am »
when i do step 2 i cant find the file y is this?

cron

  • Donators
  • *
  • Posts: 197
  • Turrets: +22/-22
    • GrangerHub
Re: The shorter & sweeter guide to compiling Tremulous on Windows
« Reply #13 on: April 14, 2011, 02:47:38 pm »
The design on the libcurl site is a bit yucky, making it hard to find the right thing, but here's a direct link to what you want: http://www.gknw.net/mirror/curl/win32/curl-7.21.4-devel-mingw32.zip

Dr. A. Goon

  • Posts: 40
  • Turrets: +2/-0
Re: The shorter & sweeter guide to compiling Tremulous on Windows
« Reply #14 on: May 02, 2011, 06:28:45 pm »
This guide should definitely be stickied, the old guide is outdated.

You should add a section on what to do with the build output, especially the qvm.

Piper802

  • Posts: 56
  • Turrets: +2/-2
Re: The shorter & sweeter guide to compiling Tremulous on Windows
« Reply #15 on: May 31, 2011, 12:42:22 am »
Haha sorry Cron but I've been having the same probs as everyone else :P

At first I couldnt find the right libcURL, due to the site being a bit yucky as you said haha. I think you should put the direct link in the topic post :P

But yeah then I had the same problem as Dr. A Goon that involved using
Code: [Select]
make CC=gcc, which got me a liiittle further

And now I'm having the same problem as Dr. A Goon again, where its not finding wspiapi.h from the #include in tremulous/src/qcommon/net_ip.c, so I deleted the #include call, and now I'm just getting more errors about other files it cant find:

Code: [Select]
make[1]: Leaving directory `/home/Nolan/tremulous'
make[1]: Entering directory `/home/Nolan/tremulous/src/master'
rm -f debug-HPD-x86/*
rm -f release-HPD-x86/*
make[1]: Leaving directory `/home/Nolan/tremulous/src/master'

Nolan@Nolan-PC ~/tremulous
$ make
make[1]: Entering directory `/home/Nolan/tremulous'

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

  CFLAGS:
    -DNO_VM_COMPILED
    -DNO_GZIP
    -Isrc/zlib
    -DUSE_INTERNAL_JPEG
    -Isrc/jpeg-8c
    -DUSE_LOCAL_HEADERS
    -DPRODUCT_VERSION="1.1.0_SVN2213"
    -MMD
    -DNDEBUG
    -O3

  CLIENT_CFLAGS:
    -DUSE_MUMBLE
    -DUSE_VOIP
    -DFLOATING_POINT
    -DUSE_ALLOCA
    -Isrc/libspeex/include

  SERVER_CFLAGS:
    -DUSE_VOIP

  LDFLAGS:

  LIBS:

  CLIENT_LIBS:

  Output:
    build/release-HPD-x86/tremded.x86
    build/release-HPD-x86/tremulous.x86
    build/release-HPD-x86/base/cgamex86.so
    build/release-HPD-x86/base/gamex86.so
    build/release-HPD-x86/base/uix86.so

make[2]: Entering directory `/home/Nolan/tremulous'
DED_CC src/server/sv_client.c
./cc: line 1: Creative_Commons: command not found
./cc: line 2: Creative: command not found
./cc: line 3: Attribution-ShareAlike: command not found
./cc: line 4: CREATIVE: command not found
./cc: line 5: SERVICES.: command not found
./cc: line 6: RELATIONSHIP.: command not found
./cc: line 7: CREATIVE: command not found
./cc: line 8: DISCLAIMS: command not found
./cc: line 9: License: command not found
./cc: line 10: syntax error near unexpected token `('
./cc: line 10: `THE WORK (AS DEFINED BELOW) IS PROVIDED UNDER THE TERMS OF THIS
CREATIVE'
make[2]: *** [build/release-HPD-x86/ded/sv_client.o] Error 2
make[2]: Leaving directory `/home/Nolan/tremulous'
make[1]: *** [targets] Error 2
make[1]: Leaving directory `/home/Nolan/tremulous'
make: *** [release] Error 2

Nolan@Nolan-PC ~/tremulous
$ make CC=gcc
make[1]: Entering directory `/home/Nolan/tremulous'

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

  CFLAGS:
    -DNO_VM_COMPILED
    -DNO_GZIP
    -Isrc/zlib
    -DUSE_INTERNAL_JPEG
    -Isrc/jpeg-8c
    -DUSE_LOCAL_HEADERS
    -DPRODUCT_VERSION="1.1.0_SVN2213"
    -MMD
    -DNDEBUG
    -O3

  CLIENT_CFLAGS:
    -DUSE_MUMBLE
    -DUSE_VOIP
    -DFLOATING_POINT
    -DUSE_ALLOCA
    -Isrc/libspeex/include

  SERVER_CFLAGS:
    -DUSE_VOIP

  LDFLAGS:

  LIBS:

  CLIENT_LIBS:

  Output:
    build/release-HPD-x86/tremded.x86
    build/release-HPD-x86/tremulous.x86
    build/release-HPD-x86/base/cgamex86.so
    build/release-HPD-x86/base/gamex86.so
    build/release-HPD-x86/base/uix86.so

make[2]: Entering directory `/home/Nolan/tremulous'
DED_CC src/server/sv_client.c
DED_CC src/server/sv_ccmds.c
DED_CC src/server/sv_game.c
DED_CC src/server/sv_init.c
DED_CC src/server/sv_main.c
DED_CC src/server/sv_net_chan.c
DED_CC src/server/sv_snapshot.c
DED_CC src/server/sv_world.c
DED_CC src/qcommon/cm_load.c
DED_CC src/qcommon/cm_patch.c
DED_CC src/qcommon/cm_polylib.c
DED_CC src/qcommon/cm_test.c
DED_CC src/qcommon/cm_trace.c
DED_CC src/qcommon/cmd.c
DED_CC src/qcommon/common.c
DED_CC src/qcommon/cvar.c
DED_CC src/qcommon/files.c
DED_CC src/qcommon/md4.c
DED_CC src/qcommon/msg.c
DED_CC src/qcommon/net_chan.c
DED_CC src/qcommon/net_ip.c
src/qcommon/net_ip.c:35:24: fatal error: wspiapi.h: No such file or directory
compilation terminated.
make[2]: *** [build/release-HPD-x86/ded/net_ip.o] Error 1
make[2]: Leaving directory `/home/Nolan/tremulous'
make[1]: *** [targets] Error 2
make[1]: Leaving directory `/home/Nolan/tremulous'
make: *** [release] Error 2

Nolan@Nolan-PC ~/tremulous
$ make CC=gcc
make[1]: Entering directory `/home/Nolan/tremulous'

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

  CFLAGS:
    -DNO_VM_COMPILED
    -DNO_GZIP
    -Isrc/zlib
    -DUSE_INTERNAL_JPEG
    -Isrc/jpeg-8c
    -DUSE_LOCAL_HEADERS
    -DPRODUCT_VERSION="1.1.0_SVN2213M"
    -MMD
    -DNDEBUG
    -O3

  CLIENT_CFLAGS:
    -DUSE_MUMBLE
    -DUSE_VOIP
    -DFLOATING_POINT
    -DUSE_ALLOCA
    -Isrc/libspeex/include

  SERVER_CFLAGS:
    -DUSE_VOIP

  LDFLAGS:

  LIBS:

  CLIENT_LIBS:

  Output:
    build/release-HPD-x86/tremded.x86
    build/release-HPD-x86/tremulous.x86
    build/release-HPD-x86/base/cgamex86.so
    build/release-HPD-x86/base/gamex86.so
    build/release-HPD-x86/base/uix86.so

make[2]: Entering directory `/home/Nolan/tremulous'
DED_CC src/qcommon/net_ip.c
src/qcommon/net_ip.c:50:2: error: #else without #if
src/qcommon/net_ip.c:57:24: fatal error: arpa/inet.h: No such file or directory
compilation terminated.
make[2]: *** [build/release-HPD-x86/ded/net_ip.o] Error 1
make[2]: Leaving directory `/home/Nolan/tremulous'
make[1]: *** [targets] Error 2
make[1]: Leaving directory `/home/Nolan/tremulous'
make: *** [release] Error 2

Nolan@Nolan-PC ~/tremulous
$ make CC=gcc
make[1]: Entering directory `/home/Nolan/tremulous'

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

  CFLAGS:
    -DNO_VM_COMPILED
    -DNO_GZIP
    -Isrc/zlib
    -DUSE_INTERNAL_JPEG
    -Isrc/jpeg-8c
    -DUSE_LOCAL_HEADERS
    -DPRODUCT_VERSION="1.1.0_SVN2213M"
    -MMD
    -DNDEBUG
    -O3

  CLIENT_CFLAGS:
    -DUSE_MUMBLE
    -DUSE_VOIP
    -DFLOATING_POINT
    -DUSE_ALLOCA
    -Isrc/libspeex/include

  SERVER_CFLAGS:
    -DUSE_VOIP

  LDFLAGS:

  LIBS:

  CLIENT_LIBS:

  Output:
    build/release-HPD-x86/tremded.x86
    build/release-HPD-x86/tremulous.x86
    build/release-HPD-x86/base/cgamex86.so
    build/release-HPD-x86/base/gamex86.so
    build/release-HPD-x86/base/uix86.so

make[2]: Entering directory `/home/Nolan/tremulous'
DED_CC src/qcommon/net_ip.c
DED_CC src/qcommon/huffman.c
DED_CC src/qcommon/parse.c
DED_CC src/qcommon/q_math.c
DED_CC src/qcommon/q_shared.c
DED_CC src/qcommon/unzip.c
DED_CC src/qcommon/ioapi.c
DED_CC src/qcommon/vm.c
DED_CC src/qcommon/vm_interpreted.c
DED_CC src/null/null_client.c
DED_CC src/null/null_input.c
DED_CC src/null/null_snddma.c
DED_CC src/sys/con_log.c
DED_CC src/sys/sys_main.c
AS src/asm/ftola.s
AS src/asm/snapvectora.s
AS src/asm/matha.s
DED_CC src/zlib/adler32.c
DED_CC src/zlib/crc32.c
DED_CC src/zlib/inffast.c
DED_CC src/zlib/inflate.c
DED_CC src/zlib/inftrees.c
DED_CC src/zlib/zutil.c
DED_CC src/sys/sys_unix.c
src/sys/sys_unix.c:35:22: fatal error: sys/mman.h: No such file or directory
compilation terminated.
make[2]: *** [build/release-HPD-x86/ded/sys_unix.o] Error 1
make[2]: Leaving directory `/home/Nolan/tremulous'
make[1]: *** [targets] Error 2
make[1]: Leaving directory `/home/Nolan/tremulous'
make: *** [release] Error 2


$

Dr. A. Goon

  • Posts: 40
  • Turrets: +2/-0
Re: The shorter & sweeter guide to compiling Tremulous on Windows
« Reply #16 on: May 31, 2011, 12:48:58 am »
Yeah, what happened to me was that I screwed my PLATFORM variable to HPD which happened to you too. Set it to the windows standard, which you can find by inspecting the makefile.

zoomer

  • Posts: 24
  • Turrets: +0/-1
Re: The shorter & sweeter guide to compiling Tremulous on Windows
« Reply #17 on: June 07, 2011, 06:02:14 pm »
It worked for me first time thanks

cron

  • Donators
  • *
  • Posts: 197
  • Turrets: +22/-22
    • GrangerHub
Re: The shorter & sweeter guide to compiling Tremulous on Windows
« Reply #18 on: November 18, 2011, 03:03:49 am »
More info:

You should add a section on what to do with the build output, especially the qvm.

I have compiled the source.. But now what, is there another guide that can tell me what to do next?  It obviously isn't runnable.  How can I package it for distribution to some friends? 

the tremulous.x86.exe file can be found in the build/*/ directory and the VMs can be found in vm/*/base/vm/.

You put the tremulous.x86.exe file in your Tremulous folder and execute it to play and/or put the VMs in %appdata%/Tremulous/base/vm to put your compiled gameplay changes into effect.

ULTRA Random ViruS

  • Posts: 924
  • Turrets: +4/-101
    • ZdrytchX's reference website
I get lots of error messages due to the fact that i have ._ files (needed for Git repo)
I'm also having problems with auto-installing tools... they block my qvm build

/dev/humancontroller

  • Posts: 1033
  • Turrets: +1002/-383
To download the newest Tremulous 1.1 source from SVN (creates a directory ~/tremulous/ ):
   $ svn co -r HEAD svn://svn.icculus.org/tremulous/trunk/ ~/tremulous
there isn't really such a thing as the newest 1.1 source. r755 was the revision used in the 1.1.0 release. the network compatibility with 1.1.0 was lost at, IIRC, some 900ish revision, and after 100s of revisions later, GPP changes (including balance changes) were added. the gpp branch differs from the main branch (the trunk) basically only by default network settings (eg., the master server port). for users who do not fully understand the differences between the main branch and the gpp branch: avoid the main branch, download the gpp branch instead; ie., do not chose to run the above command.

ULTRA Random ViruS

  • Posts: 924
  • Turrets: +4/-101
    • ZdrytchX's reference website
Its not that... i while building the qvm it says something like installing blah blah and said something like invalid or cannot etc...
Also, i tried compiling gpp and korx qvm as is, they succeed but when i try the qvm on a local server, the korx one's buildables are screwed up (multiple rcs can be built, you can walk through them, they do not power anything e.i. do nothing at all, just visually present) and the gpp [server] has lots of [i think buildable placement] problems as it shows the coordinates of some random numbers, and the client crashes before it loads the map. This time i  redone step #2, [before i had the forum opened up in a weird format and couldn't load some links [http://tremulous.net/forum/index.php?topic=14726.0;wap2]] but it seems the link no longer exists [http://www.gknw.net/mirror/curl/win32/curl-7.21.4-devel-mingw32.zip]
I googled the file but i get the same links or links that have no relation [e.i. viruses, porno sites etc...]
« Last Edit: April 12, 2012, 10:08:34 am by ULTRA Random ViruS »

/dev/humancontroller

  • Posts: 1033
  • Turrets: +1002/-383

CreatureofHell

  • Posts: 2422
  • Turrets: +430/-126
    • Tremtopia
{NoS}StalKer
Quote
<Timbo> posting on the trem forums rarely results in anything good

/dev/humancontroller

  • Posts: 1033
  • Turrets: +1002/-383
9-24-11
4-17-12
what are these silly numbers?

Dates in MM/DD/YY format?
that can't be; MM/DD/YY would imply something like 04/17/12, which has a leading 0 and uses '/'s as separators. the number could be dates in Y-M-D or M-D-Y format, or could be just some fancy serial numbers. but in any case, there's an international date and time representation standard.
« Last Edit: April 18, 2012, 07:22:07 pm by /dev/humancontroller »

danmal

  • Posts: 244
  • Turrets: +21/-6
Re: Compiling Tremulous on Windows using MinGW
« Reply #25 on: April 22, 2012, 03:42:57 pm »
There's also local (non-ISO 8601 complaint) standards for the display of dates which in some countries see wide spread use. It's my belief that Cron used this local standard instead of ISO 8601. Be aware that the use of ISO 8601 compliant date representation does not actually resolve your issue. Your issue is that he has not specified which format he has used. Alternatively this confusion could be avoided by using a non-ambiguous date format such as 12 April 2012.
« Last Edit: April 22, 2012, 03:48:24 pm by danmal »

/dev/humancontroller

  • Posts: 1033
  • Turrets: +1002/-383
Re: Compiling Tremulous on Windows using MinGW
« Reply #26 on: April 23, 2012, 02:20:08 am »
a non-ambiguous date format such as 12 April 2012.
or YYYY-MM-DD...

danmal

  • Posts: 244
  • Turrets: +21/-6
Re: Compiling Tremulous on Windows using MinGW [Updated 2012-04-18]
« Reply #27 on: April 23, 2012, 05:06:58 am »
It's ambiguous as YYYY-MM-DD could be mistaken for YYYY-DD-MM unless the date format has been specified.

/dev/humancontroller

  • Posts: 1033
  • Turrets: +1002/-383
Re: Compiling Tremulous on Windows using MinGW [Updated 2012-04-18]
« Reply #28 on: April 23, 2012, 06:30:50 pm »
It's ambiguous as YYYY-MM-DD could be mistaken for YYYY-DD-MM unless the date format has been specified.
or could be "mistaken" for YD-MY-YMDY, or any other fancy format, just as 12 April 2012 could be "mistaken" for YD <month> DY<fancy_checksum_of_the_year>. but who uses any of these fancy formats?

danmal

  • Posts: 244
  • Turrets: +21/-6
Re: Compiling Tremulous on Windows using MinGW [Updated 2012-04-18]
« Reply #29 on: April 24, 2012, 08:32:04 am »
You should be aware however that there are 3 main formats used to represent dates; D-M-Y, M-D-Y, Y-M-D. 9-24-11 is obviously of the format M-D-Y and therefore in this case the format M-D-Y is non-ambiguous (just like ISO 8601). We must operate on one of two assumptions. That a person will be aware of the 3 major date formats in which case the use of M-D-YY is perfectly acceptable in this specific case or that a person will not be aware of any date formats in which case your proposed solution (the implementation of ISO 8601) is inadequate.