From: brian gerkey <bgerkey@po...> - 2002-09-16 23:57:50
i've just ported Player & Stage to OS X; status is below. i'm doing this on
SourceForge's compile farm, so i can't test things like the GUI (they don't
allow X11 forwarding from inside). maybe somebody with a Mac wants to try it
- i've run the C++ client tests (from the Alpha/Linux machine on the compile
farm network) against Stage without GUI, and they *seem* to work.
- GTK GUIs build, but are not tested
- Player clients don't build, cause for some reason 'cc' says that it doesn't
understand the 'attribute ((packed))' nonsense in <player.h>, despite the
fact that it is indeed gcc. 'c++' (i.e., g++) understands it fine. needs
some tinkering, i guess.
- despite having the man pages and header, OS X seems not to have srand48()
or lrand48(). i've set configure to check for them and i'm currently
leaving them #ifdef'd out if they're not available (obviously not a
- fallback implementations of poll() and dirname(), as well as a common header
<replace.h> have been added to Stage.
- Stage is still using SysV-style semaphore-locking (e.g., sem_init(),
sem_wait()) for the clock file. i've commented this out, cause OS X doesn't
support it. furthermore, Player is *not* doing this kind of locking; it's
doing record-locking, like is done for the other files. so, i think that
the shared clock has not been locked for a very long time. interesting.
- use of the broadcast device causes Player to hang, just like on Solaris.