I have a larger code running in Linux, written in c++ (c++11) and python and using numerous libraries (VTK, boost, pyqt, OpenGL) and compiles to python extension modules (and plugins of those modules) and pure python modules (the main program is a python script). The code is cross-platform (with a few exceptions, like dlopen, gettimeofday which can be replaced by windows equivalents via #ifdef's) and compiler-agnostic (it compiles with -ansi, and a few compiler-specific things like __attribute__ can also be, hopefully, replaced, if needed).
I am cosindering attempting compilation on Windows, but I am totally lost on how should I proceed (I am fairly experienced with development in Linux, but I have not used Windows since late 90s).
Should I go for mingw or MSVC compiler? Would I be better of to cross-compile? Do I need to install dependencies "by hand" by downloading installers from the web; do I need to compile those as well? Are there standard paths for include files, or are all of them to be detected? If I ever manage to compile it, how can make some sort of package (it is a bundle of pure-python modules and shared libs)?
I assume I am not the first one who is trying to see how it works under Windows (I reckon I am spoiled by package managers and all dev-friendly things in Linux), perhaps there is a helpful reference somewhere.
I think your choice here depends on your goals for compiling under Windows. Are you preparing to involve other developers that can choose their development platform? Do you want to use a different compiler for additional warnings generation? Are you looking to deploy the application on the windows platform? Asking these kinds of questions should help you make a more informed decision.
Here are some suggestions...

It doesn't hurt to try MSVC. The 2010 express edition is the last free edition to support standard C++ development. Future express editions are for "Metro" apps only. I would weigh that against your goals for Windows development and choose accordingly.
For a cross platform build, see if you can implement a standardized build system such as CMake or SCons.
I wouldn't ship with dependencies, regardless of the final decision. It is standard practice for Open Source to require developers to download dependencies individually. Just be sure to include version information for anything where the current stable release is not backwards compatible with your application. (Or even better, FIX those problems so you get the benefit of the latest fixes in 3rd party code.) Python, at the very least, should be the responsibility of the developer. It is meant to be installed, and pywin32 extensions will register COM items in the system registry on a Windows installation.
As far as recruiting Open Source developers, you may find that requiring MinGW to be installed on a developer's machine will discourage some of the dedicated MSVC users from working on the project.
compiling+distributing Linux code on Windows