PDA

View Full Version : JKA "Universal" Source Code


Trimbo
12-03-2003, 07:14 PM
Ok, i've made a version of the sdk that will work with vc7.net, vc6 and will also build on linux (type make in the game dir to create the .so file).

The file is posted on lucasfiles, so look out for it when they list it. Basically, if you use this sdk as your starting point, you will be able to build it on linux later on when you come to release your uber mod!

Credits go to the linux patch creator (don't know his/her name, website is: http://divoid.net/) and to Legacy for providing the vc6 dsp/dsw files. All I did was run the patch, add the vc6 stuff, tar.gz it and upload it.

Note that this is the *vanilla* source (ie, other than the linux fixes, this code contains *NO* alterations, mods, bug fixes, etc).

Regards,

Trimbo

razorace
12-04-2003, 12:21 AM
Let me get this straight, do you have to use a Linux/Unix compiler to get this to work?

Emon
12-04-2003, 01:43 AM
Um, no, that's why he said it works in MSVC++. But why you would want to use Microsoft's compiler over GCC/MinGW32 is beyond me.

razorace
12-04-2003, 02:31 AM
Ok, I guess I'll have to try it out then.

Trimbo
12-04-2003, 06:01 AM
you can grab it here (http://www.lucasfiles.com/index.php?s=&action=file&id=369). For some reason the lucasfiles admins decided to change it from a tar.gz to a zip file.

Just to clarify, you can use this sdk on vc6 or vc7.net or linux (tested on debian, gcc 3.3.2). We just felt we neded an sdk that was already linux ready, to save people having to worry about post-patching it after they have finished their mod and want to publish it. So also decided to bung in the vc6 dsp/dsw files for people who like to use vc6. If anyone else has any other ports to other development systems then let me know and i'll add it into the archive.

Anyway, I hope it's useful to someone.

Trimbo

Trimbo
12-04-2003, 06:10 AM
I just downloaded the archive they posted, and it is incorrect (its missing the main dsw file). I've asked them to regrab it from my ftp and replace the version they have posted. Hopefully this time they will leave the file alone and just post it as-is.

razorace
12-04-2003, 07:01 AM
Ok, so does that mean that you can't compile the linux compile (so that it will work in Linux) in windows?

Trimbo
12-04-2003, 07:22 AM
If I understand your question correctly, you are asking:

Q: Can I compile the SDK on windows and get the .so file I need for it to work on a linux dedicated server? (ie, I don't have / don't have access to a linux box)

A: The "Universal" SDK contain the needed files (vc files, linux makefile) to allow you to compile on EITHER platform. If you choose to develop on windows, you will be creating a windows dynamic linked library (.dll file) and if you chose to develop on linux you will be creating an linux sharded object file (.so file). Now, most people I expect will develop on windows and test with dll's, but, when you come to release your mod you will probably want to additionally build a .so file so that linux dedicated servers can run your mod. If you use this patched source as your starting point for development you will be able to copy the code to a a linux box and compile it directly. If you do not use this patched code (and instead use the raven supplied sdk) your code WILL NOT compile on linux. Also note that the linux .patch file will only work on a vanialla codebase, and will not work on your mod after you hack added / altered the codebase (I havn't tested that, but afik its correct).

So, to answer your question, no, if you need a linux build (.so file) you DO need access to a linux box. This SDK just makes sure that if / when you do want a linux build, it should work.

I hope that makes sence.

Trimbo

Trimbo
12-06-2003, 06:17 PM
Lucasfiles have now corrected the error (was actually my fault).

razorace
12-06-2003, 06:23 PM
So, other than the makefile, how's the code different?

razorace
12-06-2003, 06:23 PM
So, other than the makefile and vc files, how's the code different?

divoid
12-06-2003, 09:09 PM
the creator of the forementioned patch is i. the patch which i made that makes the source able to compile on linux does much more than create a makefile. there are a crapload of files that give errors and warnings left and right when you try to compile. just go to my site and look at the patch file, you'll see everything it changes. http://divoid.net/downloads.html

Trimbo
12-07-2003, 12:45 PM
Originally posted by divoid
[B]the creator of the forementioned patch is i.

Ahh, I couldn't find your name on your site, so I couldn't give your credit by name. Thank you and good job.

To answer razorace's question, the source is just the vanilla source, but AFTER the patch has been applied. So if you don't have access to a linux system to apply the patch yourself, you can just use this version of the source.

razorace
12-07-2003, 07:22 PM
Ok dokie. Thanks all for doing this.

Emon
12-14-2003, 05:49 AM
I would submit this to the QERadiant team via BugZilla; they are including JA source code with their JA media now.

razorace
12-14-2003, 07:06 AM
Update. I talked to the dude that did the linux compile for Raven and he stated that the default code compiles correctly with no issues if you use the right compiler. He said that he used the Intel Compiler (icc).

Trimbo
12-17-2003, 12:09 PM
AFIK the intel compiler isn't free (and very expensive I think). This SDK compiles will GCC on Linux.

razorace
12-17-2003, 08:29 PM
So is Visual Studios. :)