AFAIK apt-get is supposed to grab and install all the missing prereqs when installing for a given package. Although maybe it's the case that someone could have a package and not actually have all the correct prereqs listed? Not sure how stringent the requirements are. I actually tend to agree that development on Linux is easier since most libraries etc. are easier to build yourself out of the box compared to on Windows. While doing other day to day stuff works better on Windows, since 9 times out of 10 the software for any given application is more mature on Windows. I guess C/C++ cross-compatibility can be a bit tricky when you need something to behave consistently, but honestly I've had more issues with running on different hardware platforms causing issues than I have with OS differences (float precision, pls). The bigger problems I've had with OS differences start to come in when someone is using a platform specific library in their code, and then you have to try to find someone's working Windows implementation of a GNU library and ugh just ughhhh.