diff -urN a/setup.py b/setup.py --- a/setup.py 2014-10-11 14:20:05.461046200 +0100 +++ b/setup.py 2014-10-11 14:20:08.299208600 +0100 @@ -1512,7 +1512,7 @@ macros = dict() libraries = ['rt'] - if host_platform == 'win32': + if host_platform.startswith(('mingw', 'win')): multiprocessing_srcs = [ '_multiprocessing/multiprocessing.c', '_multiprocessing/semaphore.c', ] @@ -1525,8 +1525,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=list(macros.items()), + libraries=multiprocessing_libs, include_dirs=["Modules/_multiprocessing"])) else: missing.append('_multiprocessing')