From what I've seen, relying on
SDL always works, just may have to include a library with your prod here and there (no big deal). OpenGL is clean, too, as I'm sure you know. For C++ you can still write in Visual Studio, but be aware that there are some minor code differences between M$'s (seemingly standard but quite domain-specific) idea of C++ and the rest of the world's

. I would recommend switching to GCC in this case; there are plenty of great IDE's available like
Code::Blocks so you won't be far from a comfortable environment.
Codewise, if you limit yourself to STL and SDL/OpenGL/Qt/Only libraries that are explicitly cross-platform, you'll be just fine

.