Solución:
Tienes dos opciones:
- Usar Cygwin (Biblioteca de emulación Unix).
- Puerto a Winsock (Biblioteca estándar de Windows).
Cygwin: le permite compilar sus fuentes Unix en su mayoría intactas, pero lo vincula a la biblioteca de emulación Cygwin. Esto tiene dos implicaciones: el rendimiento general -no solo la red- probablemente será menos que óptimo; y el entorno de destino debe tener (en tiempo de ejecución) la DLL Cygwin instalada.
Winsock: esto requiere que lo reemplace sys/socket.h
(Biblioteca de sockets BSD, estándar UNIX para la pila TCP / IP) con winsock2.h
y reescriba algunas partes del código, no muchas, pero algunas.
Algunas preguntas relacionadas con información valiosa:
Diferencias entre implementaciones de socket winsock y BSD
Algunos problemas sobre Cygwin[Linux in Windows] (socket, hilo, otros problemas de programación y shell)
¿Ejemplos de Winsock?