Earlier quoted context omitted.
In the beginning (10.0 - 10.2 timeframe), OSX was pretty much broken if you wanted to work on software that was destined for Linux. Even the existing software was PITA to get running on OSX, you were fighting both autotools and OSX linker and libraries at once.
Not strictly true, it was quite possible to write code on OSX that could be run on Solaris and Linux easily enough. You just had to not depend on autotools too much, and understand how to use the OSX linker/libraries properly in your project. (Disclaimer: I am one of those programmers who only switched to Apple because of the tiBook, which was a damned sexy Unix workstation in spite of the fact it was also a damned s…
You had to take care to use libraries/APIs that were available at all three systems (no dlopen() or dlsym() at the time in OSX!), and take quirks of the OSX linker into account.
(Disclaimer: I was getting angry at Apple at the time. In a few years, they went through OS9->OSX migration, getting rid of Classic mode in emulation and now switching to Intel. They were breaking compatibility again; it meant buying new software like MS Office again - looking at the PC side, they didn't have such problem. So PB12 was my last Mac for a long time... until 2015, actually).