This is not an issue on Cygwin as all extensions must be linked against their respective libpython on PE platforms. --- origsrc/vim73/src/if_python.c 2013-05-13 12:58:43.770727000 -0500 +++ src/vim73/src/if_python.c 2013-05-13 16:40:04.432754100 -0500 @@ -506,7 +506,7 @@ python_runtime_link_init(char *libname, int i; void *ucs_as_encoded_string; -#if !(defined(PY_NO_RTLD_GLOBAL) && defined(PY3_NO_RTLD_GLOBAL)) && defined(UNIX) && defined(FEAT_PYTHON3) +#if !(defined(PY_NO_RTLD_GLOBAL) && defined(PY3_NO_RTLD_GLOBAL)) && defined(UNIX) && !defined(__CYGWIN__) && defined(FEAT_PYTHON3) /* Can't have Python and Python3 loaded at the same time. * It cause a crash, because RTLD_GLOBAL is needed for * standard C extension libraries of one or both python versions. */ --- origsrc/vim73/src/if_python3.c 2013-05-13 12:58:44.176767800 -0500 +++ src/vim73/src/if_python3.c 2013-05-13 16:40:26.651024900 -0500 @@ -471,7 +471,7 @@ py3_runtime_link_init(char *libname, int int i; void *ucs_from_string, *ucs_decode, *ucs_as_encoded_string; -# if !(defined(PY_NO_RTLD_GLOBAL) && defined(PY3_NO_RTLD_GLOBAL)) && defined(UNIX) && defined(FEAT_PYTHON) +# if !(defined(PY_NO_RTLD_GLOBAL) && defined(PY3_NO_RTLD_GLOBAL)) && defined(UNIX) && !defined(__CYGWIN__) && defined(FEAT_PYTHON) /* Can't have Python and Python3 loaded at the same time. * It cause a crash, because RTLD_GLOBAL is needed for * standard C extension libraries of one or both python versions. */