Tremulous Forum
Mods => Modding Center => Topic started by: MechWarrior001 on May 29, 2010, 01:07:47 am
-
I'm trying to compile Tremulous using GUN Make within Code::Blocks, and I am using the makefile that comes with the source tarball; however, it keeps giving me this error how uname isn't a recognized command.
Any ideas?
-
What OS are you running, and (if not windows) what shell? From a quick search through the makefile and the uname man page, it seems that uname is run by the makefile through the system shell, and that uname is a command line program that prints sytem information (what processor, what os, what archetecture, etc)
-
I am using Windows XP, and where could I get uname for Windows?
-
Both MSys and Cygwin have it. You'll need to read all relevant bits about cygwin in this thread if you intend to use it. Installing MSys (if you havn't already) is also covered in the first post. EDIT:a quick readthrough of the last page tells me that you'll probably want to at least read through this guide, and it is important that you install MinGW before MSys.
http://tremulous.net/forum/index.php?topic=3408.0
-
what version of MingW32 should I use? I have the 5.1.6 installer but I'm not sure if I should use a specific version or not.
-
My guess is that the specific version doesn't matter, but if the first post in that thread I told you to read says otherwise, then follow its advice.
-
Alright, thanks. Also, how do you compile a QVM? Is it any different than compiling the exe?
-
if you just type "make" without editing the makefile I think you'll compile the qvms in addition to the exe. So for your purposes, probably not.
The exe needs the qvm to run, but the qvm is OS independent, while the exe is not. So if you can get your qvms from someone else (or compile them in a different OS) then you can use them with your windows exe. If you absolutely cannot get the qvms to compile, you don't really need to compile them yourself. Unless you're making changes to the code, because most of that goes into qvms rather than the actual exe.
-
Well I have this idea of combining both Pbot and Lakitu7 qvms into one, so you get the awesomeness of Lakitu7 + the advanced bot abilities of Pbot. So my question is, which files are absolutely required in a QVM and which files can I leave out? For example, I don't think I'll need to compile the headers containing floating-point operations for vertex and triangle renderings, while other headers containing the code for bots and etc. will either need to be merged or modified and linked into the final .qvm file. At least I think it works like that.
-
You need everything.
-
Ok, so which files would I need to modify/merge and which ones could I leave alone?
And which version of Lakitu7 is Pbot based off of?
-
Every file that pbot changed and that lakitu's qvm also changed will need to be merged together. Good luck, though you might find that to be...challenging
-
Well, after going through Pbot's 2.8 qvm (Which I haven't used in awhile) I realized it contained a majrity of the features in Laktiu7's QVM, so I'm assuming whatever gain there is to be made from merging the 2's latest source might be little. One question though is where is the data for weapons and armor and abilities contained? For example, what contains the damage & recoil values for weapons? The QVM, the exe, or a separate config somewhere in data-1.1.0.pk3?
-
The qvm, probably from tremulous.h.
-
Alright, I decided to up on compiling on windows and I'm just going to install a Ubuntu distro and cross compile, but now I get some funky error on how it can't find some directory or something when I try to run the cross-mingw-make.sh script for the Trem 1.2 GPP source.
-
Do post the error in full.
-
philip@ubuntu:~/Desktop/tremulous-ggp1-src$ '/home/philip/Desktop/tremulous-ggp1-src/cross-make-mingw.sh'
make[1]: Entering directory `/home/philip/Desktop/tremulous-ggp1-src'
Building Tremulous in build/release-mingw32-x86:
PLATFORM: mingw32
ARCH: x86
VERSION: gpp1
COMPILE_PLATFORM: linux
COMPILE_ARCH: x86
CC: gcc
CFLAGS:
-Wall
-fno-strict-aliasing
-Wimplicit
-Wstrict-prototypes
-DUSE_ICON
-DWINVER=0x501
-m32
-DNO_GZIP
-DUSE_LOCAL_HEADERS
-DPRODUCT_VERSION="gpp1"
-MMD
-O3
-march=i586
-fno-omit-frame-pointer
-falign-loops=2
-funroll-loops
-falign-jumps=2
-falign-functions=2
-fstrength-reduce
-ffast-math
CLIENT_CFLAGS:
-DUSE_OPENAL
-DUSE_OPENAL_DLOPEN
-DUSE_CURL
-DCURL_STATICLIB
-Isrc/SDL12/include
-DUSE_MUMBLE
-DUSE_VOIP
-DFLOATING_POINT
-DUSE_ALLOCA
-Isrc/libspeex/include
SERVER_CFLAGS:
LDFLAGS:
LIBS:
-lws2_32
-lwinmm
CLIENT_LIBS:
-lgdi32
-lole32
-lopengl32
src/libs/win32/libcurl.a
-lmingw32
src/libs/win32/libSDLmain.a
src/libs/win32/libSDL.dll.a
Output:
build/release-mingw32-x86/tremded.x86.exe
build/release-mingw32-x86/tremulous.x86.exe
build/release-mingw32-x86/base/cgamex86.dll
build/release-mingw32-x86/base/gamex86.dll
build/release-mingw32-x86/base/uix86.dll
make[2]: Entering directory `/home/philip/Desktop/tremulous-ggp1-src'
WINDRES src/sys/win_resource.rc
make[2]: i586-mingw32msvc-windres: Command not found
make[2]: *** [build/release-mingw32-x86/ded/win_resource.o] Error 127
make[2]: Leaving directory `/home/philip/Desktop/tremulous-ggp1-src'
make[1]: *** [targets] Error 2
make[1]: Leaving directory `/home/philip/Desktop/tremulous-ggp1-src'
make: *** [release] Error 2
philip@ubuntu:~/Desktop/tremulous-ggp1-src$
-
sudo aptitude install mingw32-binutils