Most devs I know don't enjoy developing on Windows. They often only do so to have a build function that works on Windows.
Every build tool uses some kind of makefile regardless of the platform. I generally favour using Code::Blocks to avoid having to manually create them too much. Though doing it manually for 3DS is still a massive pain in the arse.