diff -Naur a/setup.py b/setup.py --- a/setup.py 2014-06-03 08:13:15.587200000 +0400 +++ b/setup.py 2014-06-03 08:13:15.727600000 +0400 @@ -1570,7 +1570,7 @@ macros = dict() libraries = ['rt'] - if host_platform == 'win32': + if host_platform.startswith(('mingw', 'win')): multiprocessing_srcs = [ '_multiprocessing/multiprocessing.c', '_multiprocessing/semaphore.c', '_multiprocessing/pipe_connection.c', @@ -1587,8 +1587,12 @@ multiprocessing_srcs.append('_multiprocessing/semaphore.c') if sysconfig.get_config_var('WITH_THREAD'): + multiprocessing_libs = [] + if host_platform.startswith(('mingw', 'win')): + multiprocessing_libs += ['ws2_32'] exts.append ( Extension('_multiprocessing', multiprocessing_srcs, define_macros=macros.items(), + libraries=multiprocessing_libs, include_dirs=["Modules/_multiprocessing"])) else: missing.append('_multiprocessing')