Compiling a mod under GNU/Linux


(ailmanki) #81

http://mirrors.kernel.org/gentoo/experimental/prefix/x86-interix/current/
why not install linux in windows? :slight_smile:

dunno how far its support goes, but I guess compiling should be possible… lol


(Paul) #82

My tutorial that will come soon runs on windows + virtual box image… for me this works fine


(kamikazee) #83

Ah, so your are cheating (a bit) by using VirtualBox.

But please do continue, I’d be interested to see how you get the right GNU C-lib version nowadays.


(stealth6) #84

[QUOTE=kamikazee;218046]Ah, so your are cheating (a bit) by using VirtualBox.

But please do continue, I’d be interested to see how you get the right GNU C-lib version nowadays.[/QUOTE]

lol I’d hardly call virtual box cheating… actually a pretty effective way of solving the problem.


(kamikazee) #85

Sorry to pull this off-topic.

It was just that he claimed he could compile .so files on Windows when I said he could not. Running Linux in a virtual machine still means you need to deal with that tiny bit of Linux.

Anyway, not going to continue about this gray area, we were both right on our own terms. I applaud him for writing a tutorial where there was none before.


(dwe_flame) #86

so there is not yet some step-by-step tutorial available ?
after some maps i want to dedicate myself to a small mod now, but first of all i want to be able to compile myself (cant test else)


(nUllSkillZ) #87

I’ve written one several years ago in german for the German Ubuntu wiki.
http://wiki.ubuntuusers.de/Spiele/Wolfenstein_Enemy_Territory/Modding


(dwe_flame) #88

i can understand german for a word or 2.
i’lkl just PM you when i run into problems =)


(zstarsales04) #89

Hello, everybody, I am new here. Here is something might be helpful for you.www.zstar.hk www.edgei-ds.cn (many movies to download)www.tigersupermall.com:armadillochase:


(valkyr) #90

I don’t see it mentioned anywhere, so for the benefit of anyone wanting to compile on 64-bit Linux, before doing…


scons -c
scons

Change line 226 of Sconstruct to :


BASECPPFLAGS = [ "-m32" ]

and line 231 to :


BASELINKFLAGS = [ "-m32" ]

This sets 32-bit linker and compiler flags.


(stealth6) #91

I’m trying to compile a mod on macosx (macbook). I’ve gotten as far that the mod compiles, but when I try to bundle it with makebundle.sh it gets stuck this is what it says in the log:


Install file: "build/release/game/libqagame.so" as "qagame.mp.i386.so"
Install file: "build/release/cgame/libcgame.so" as "cgame.mp.i386.so"
Install file: "build/release/ui/libui.so" as "ui.mp.i386.so"
make_bundle(["build_bundle"], ["qagame.mp.i386.so", "cgame.mp.i386.so", "ui.mp.i386.so"])
./makebundle.sh qagame.mp.i386.so
Missing qagame.mp.i386.so.mp.ppc.so
./makebundle.sh cgame.mp.i386.so
Missing cgame.mp.i386.so.mp.ppc.so
./makebundle.sh ui.mp.i386.so
Missing ui.mp.i386.so.mp.ppc.so
scons: done building targets.

I’m not sure but I was thinking that the makebundle.sh is out of date? I was looking around and I think this is caused because the newer macbooks have a different cpu? i686-apple-darwin9 instead of power pc or something.
Anybody know how to get past this? (getting an old version of mac is not an option)


(acQu) #92

Question: when i want to compile on newer linux, is it enough to just relink my gcc version. And if this should work, which gcc version should i install.

And yes i can compile in a VM, but i want to try it with relinking my gcc first. Anybody got experience with that, are there any pitfalls ? Or is this a wrong route :confused:

Old Debian Etch image doesn’t work with me neither :wink:


(Shownie) #93

[QUOTE=stealth6;266749]I’m trying to compile a mod on macosx (macbook). I’ve gotten as far that the mod compiles, but when I try to bundle it with makebundle.sh it gets stuck this is what it says in the log:


Install file: "build/release/game/libqagame.so" as "qagame.mp.i386.so"
Install file: "build/release/cgame/libcgame.so" as "cgame.mp.i386.so"
Install file: "build/release/ui/libui.so" as "ui.mp.i386.so"
make_bundle(["build_bundle"], ["qagame.mp.i386.so", "cgame.mp.i386.so", "ui.mp.i386.so"])
./makebundle.sh qagame.mp.i386.so
Missing qagame.mp.i386.so.mp.ppc.so
./makebundle.sh cgame.mp.i386.so
Missing cgame.mp.i386.so.mp.ppc.so
./makebundle.sh ui.mp.i386.so
Missing ui.mp.i386.so.mp.ppc.so
scons: done building targets.

I’m not sure but I was thinking that the makebundle.sh is out of date? I was looking around and I think this is caused because the newer macbooks have a different cpu? i686-apple-darwin9 instead of power pc or something.
Anybody know how to get past this? (getting an old version of mac is not an option)[/QUOTE]

A answer of this would really be appreciated! :slight_smile:


(ailmanki) #94

makebundle only makes the archive pk3. So if you got till there - you could make that also manually.

Its difficult, as I do not know which files / version you used. Is it this: http://gitorious.org/enemy-territory/et/blobs/master/src/makebundle.sh ?

But there is one discrepancy in the log:

./makebundle.sh qagame.mp.i386.so
Missing qagame.mp.i386.so.mp.[B]ppc[/B].so

Its somehow looking for ppc, even though you use a intel mac.
Why not use an old mac? If you use a new mac you can only have compatibility to Intel, else you could have both.


(Shownie) #95

I have only a Intel mac. But I am trying to solve this, as I really need mac support for my mod. But any information regarding mac would be helpful!


(cheesy) #96

@ whoever…

I have a linux appliance preconfigured and ready to compile older glibc (compatible with gameservers.com). All you have to do is install vmware.

@ Shownie
I assume you have kaliway hackintosh or made mac install on intel clone, but regardless of mac, intel mac, hackintosh you can compile mac binaries just the same. Is it OSX 10.5?


(cheesy) #97

Instructions for MAC compile (used for etpub, ecsmod, and mad warfare)

Prepare a new mac for compile
Tested on Mac OSX 10.5 (MAC, Intel-MAC, Hackintosh, and VMware)

  1. install latest scons
  2. install “xcode dev tools” for OSX 10.5 version
    Thats it, do NOT install mac ports or darwin ports because the ET binaries will not work correctly and this is not needed.

Syntax used for MAC compile
cd path/trunk/src
scons -c

cgame:
sudo scons BUILD=release BUILDBUNDLE=1 DEDICATED=0 TARGET_GAME=0 TARGET_CGAME=1 TARGET_UI=0 WITH_LUA_SUPPORT=0
ui:
sudo scons BUILD=release BUILDBUNDLE=1 DEDICATED=0 TARGET_GAME=0 TARGET_CGAME=0 TARGET_UI=1 WITH_LUA_SUPPORT=0

Compressing the MAC Binary
now that you compiled, you must find the binary, and compress it (i.e. winzip or 7zip), then remove the .zip extention
Drop it in your client.pk3 and done!


(stealth6) #98

Cool that you posted how to do it, unfortunately the project I needed it for isn’t active anymore.


(cheesy) #99

It was mainly for Shownie posted Today, 09:22 …:smiley:


(Shownie) #100

I will take a look at this asap! Many thanks for the response! :slight_smile: