un projet codeblocks, une application compilée avec mingw, elle est liée à ws2_32 (winsock2)
pas de souci jusque là, c'est bateau.
je mets le code réutilisable dans une lib statique (libmachin.a), qui référence ces fonctions winsock, mais je ne lie PAS cette lib avec winsock.
je mets le main.c dans un autre projet, que je linke avec libmachin.a ET ws2_32.
Et là, il arrive plus à linker a winsock. J'ai des tonnes de:
libmachin.a(daemon.o): In function `do_internal_command':
daemon.c:120: undefined reference to `closesocket@4'
libmachin.a(daemon.o): In function `daemon_init':
daemon.c:186: undefined reference to `WSAStartup@8'
libmachin.a(listener.o): In function `listener_create':
listener.c:41: undefined reference to `getaddrinfo@16'
listener.c:63: undefined reference to `freeaddrinfo@4'
etc etc etc
Donc, il est impossible de reloger des fonctions __stdcall qui sont appelées depuis une lib statique?

je sais pas quoi googler pour trouver des solutions. J'ai essayé plein de trucs, totalement à coté de la plaque.