Blackhand Studios announces the release of scripts.dll 1.5 [message #71577] |
Sun, 14 March 2004 12:48 |
datalore
Messages: 1 Registered: March 2004
Karma:
|
Recruit |
|
|
Hi all,
just making a post here to let you know it was a pleasure to do this 'hack' on the linux binaries. When mac came to me with the question if it would be possible to do what we have acomplished now, I was not realy sure if we could make it work. At first I didn't had a clue how to make it work.
After a couple of weeks of silence, mac persuaded me to start working (he's realy a bossy person you know ). The main problem was loading the .so file, because the original renegade binary does not have any dynamic library functionality, but when mac told me about the LD_PRELOAD solution, I was quite sure I could do it. So after another week (I didn't work a whole week on it, but my time is just so limited) the first working version for RedHat 7 was there. The RedHat 8 version was done in 30 minutes (almost the same, only some minor changes and the addresses of the functions are different).
I think the only bad thing about this 'hack' is that the scripts.so file has to be compiled with the exact same version as the gcc that the renegade binary is compiled with. This is because the scripts.so file returns pointers to class objects, and there's no fixed standard describing how class objects should be organized in memory, so that they can be exchanged between C++ programs and libraries. Microsoft uses the same standard since their first C++ compiler was released, but gcc changes there model a little bit every gcc release. This is the only reason you need the right compiler for the right version. I'm sure precompiled binaries of scripts.so will be available
Anyway, I hope the Renegade community will enjoy the time I spent to make this linux scripts version work. Glad to be of assistence to you all
signing off,
datal0re
|
|
|