PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Elite Force 2 Game Source



GSIO01
20.04.09, 11:53
Hallo allerseits,

ich arbeite schon seit längerer zeit aus spaß am Game Code zum besagten spiel.
Leider verwendet das Spiel nicht die QVM, wie viele andere auf idTech 3 basierenden spiele, was es nötig macht den gamecode für alle verschiedenen OS zu kompilieren.
Und da liegt auch schon das Problem, denn ich bekomm es einfach nicht hin den game code für linux zu kompilieren. Ich hab bereits versucht den gamecode auf den verschiedensten Distributionen (unter anderen suse 9.3, ubuntu dapper) zu kompilieren, mit aktuellen und älteren gcc/g++ versionen ohne erfolg.
Jetzt hoffe ich das mir hier eventuell jemand helfen kann, da ich an meine Grenzen gestoßen bin was mein wissen zum kompilieren unter linux angeht.

Mein letzter versuch den gamecode ohne modifikationen am code, Makefile etc. zu kompilieren (unter suse 9.3) ergab damals folgendes:

make
make targets B=releasei386-glibc CFLAGS="-Dstricmp=strcasecmp -Dstrcmpi=strcasecmp -Dstrnicmp=strncasecmp -pipe -DNDEBUG -O6 -march=pentium -fomit-frame-pointer -pipe -ffast-math -falign-loops=2 -falign-jumps=2 -falign-functions=2 -fno-strict-aliasing -fstrength-reduce -Wno-deprecated"
make[1]: Entering directory `/home/gsio01/ef2_gamesource/linux'
g++ -DGAME_DLL -DDEDICATED -DMISSIONPACK -DLINUX -Dstricmp=strcasecmp -Dstrcmpi=strcasecmp -Dstrnicmp=strncasecmp -pipe -DNDEBUG -O6 -march=pentium -fomit-frame-pointer -pipe -ffast-math -falign-loops=2 -falign-jumps=2 -falign-functions=2 -fno-strict-aliasing -fstrength-reduce -Wno-deprecated -fPIC -I../dlls -I../Shared -I../Executable -I../Shared/qcommon -I../Libs -o releasei386-glibc/game/changePosture.o -c ../dlls/game/changePosture.cpp
In file included from ../dlls/game/class.h:501,
from ../dlls/game/g_local.h:181,
from ../dlls/game/actor.h:31,
from ../dlls/game/changePosture.cpp:25:
../dlls/game/class.h: In constructor `SafePtr<T>::SafePtr(T*) [with T = Entity]
':
../dlls/game/archive.h:416: instantiated from here
../dlls/game/class.h:391: error: no matching function for call to `
SafePtr<Entity>::InitSafePtr(Entity*&)'
../dlls/game/class.h:339: error: candidates are: void
SafePtrBase::InitSafePtr(Class*)
make[1]: *** [releasei386-glibc/game/changePosture.o] Fehler 1
make[1]: Leaving directory `/home/gsio01/ef2_gamesource/linux'
make: *** [build_release] Fehler 2

Den gamecode kann man hier (http://eliteforce2.filefront.com/file/Elite_Force_II_Game_Source;20191) finden.

Danke
GSIO01

JAF
20.04.09, 20:18
ist das ueberhaupt linux source?

die beschreibung auf der seite hört sich sehr nach windows an (.dll usw) ...

GSIO01
20.04.09, 21:25
Das ist der einzige source der released wurde, da auch Makefile etc. dabei sind gehe ich einfach mal davon aus das er sowohl für windows als auch für linux verwendet wird.

Zudem wurde der Code schon einmal von einem mod team für linux kompiliert, leider steht niemand von denen mehr zur verfügung dem man fragen könnte wie sie es hinbekommen haben.

pferdefreund
22.04.09, 06:08
Sowas kann mit dem C++-Kompiler-Release zusammenhängen - versuch doch mal
rauszufinden, mit welchem Kompiler andere das hingekriegt haben.
Eventuell gibts auch ein Extra-Makefile für linux oder man
muß beim Make bestimmte Werte vorgeben - so ala make windows oder make linux
oder make was weiß ich

Ich bin Weidechef - ich darf das