I read a while ago you had i think it was some kinf of float problem with windows and linux, i am just wondering if any progress has been made?
I am asking this as there is a second port of spring for linux underway now, and this guy has plans to possibly pick up where omni left off.
Any progress on windows/linux compatibility?
Moderator: Moderators
Okay... I don't know exactly why, but for linux specific questions you are usually better off dealing with the DEV Mailing Listand the Mantis... the progress I know about has been in improving debugging so they could figure out what part of the simulation is having rounding errors...
Well, at least I check the forums here too, plus we have special linux forum now :D
Anyway, since I'm basically the only one in this community working on it (in branches/tvo3), here's current state:
Finished:
Anyway, since I'm basically the only one in this community working on it (in branches/tvo3), here's current state:
Finished:
- Sync Debugger, it has been proved a very valuable tool already in finding out the exact location where desync occurs (and the reason why desync occurs).
- Sync between linux and linux (different distro, different gcc version, etc.) seems to work fine mostly, as long as both use X87 math or both use SSE math. Mixing the two desyncs, but that's is to be expected (due to a bug in how X87 FPU unit handles denormals)
- Modify the code to use the sync debugger in the other 90% of the cases where it applies. (easy but boring)
- Use the sync debugger to fix desync between linux and MinGW (gcc on windows) (hard).
- Make sync debugger MSVC compatible (very easy).
- Use sync debugger to fix desync between linux / MinGW and MSVC (hard).
- Fix buildsystem, as the one I currently use is a bit too hackish (easy but boring).
- Alpha and betatest
- clericvash
- Posts: 1394
- Joined: 05 Oct 2004, 01:05
backtracing is disabled anyway on windows (MinGW doesn't have backtrace() either)... I ment removing other potential gcc-isms (if any) from the sync debugger.
(ie. I don't plan on supporting sync debugging between windows and windows, you always need the server to run on linux for the backtrace function)
Obviously, if someone writes a windows backtrace function (backtrace() can probably be easily done with some inline assembler & knowledge of the stack, backtrace_symbols() is possibly a lot harder, need to load debugging symbols and stuff...), I'd happily include it.
(ie. I don't plan on supporting sync debugging between windows and windows, you always need the server to run on linux for the backtrace function)
Obviously, if someone writes a windows backtrace function (backtrace() can probably be easily done with some inline assembler & knowledge of the stack, backtrace_symbols() is possibly a lot harder, need to load debugging symbols and stuff...), I'd happily include it.