Bonjour, j’essaye d’écrire un petit programme serveur / client en C en utilisant CygWin, le problème est que le compilateur gcc dans Cygwin ne semble pas contenir les en-têtes standard associés à la programmation par socket. En essayant de comstackr mon programme serveur, je reçois:
netinet/in.h: No such file or directory sys/socket.h: No such file or directory netdb.h: No such file or directory
Ces trois en-têtes sont-ils situés ailleurs dans l’environnement CygWin?
Essayez d’utiliser l’option de ligne de commande du compilateur -I pour spécifier un chemin d’access aux fichiers d’en-tête.
Mes états de référence locaux
-I dir Add the directory dir to the list of directories to be searched for header files. Directories named by -I are searched before the standard system include directories. If the directory dir is a standard system include directory, the option is ignored to ensure that the default search order for system directories and the special treatment of system headers are not defeated .
J’ai aussi eu le même problème .. J’étais en train de googler pendant des heures et j’ai finalement trouvé ça … grâce à Ralph …
https://ralphexe.wordpress.com/2015/09/09/run-unix-socket-program-in-windows-using-cygwin/
Pour les commandes de socket, vous devez inclure certains des paquets dans cygwin lors de l’installation … (Si vous avez déjà installé, réinstallez le logiciel …)
Pendant l’installation:
Dans la phase “SELECT PACKAGES” de l’installation.
Développer DEVEL
sélectionnez les compilateurs GNU pour c et c ++
4.Et cliquez sur Suivant et terminez l’installation.
MAINTENANT, essayez avec un programme de socket impliquant sys / socket.h … J’espère que cela fonctionnera … 🙂 ..
Au moins sur mon cygwim ils sont dedans
/ usr / include / sys et / usr / include / netinet
J’ai aussi eu le même problème. J’ai résolu de passer en revue les options de compilation.
NG:
$ gcc -mno-cygwin -o echo_server.exe echo_server.c echo_server.c:12:43: sys/socket.h: No such file or directory echo_server.c:13:24: netinet/in.h: No such file or directory
D’ACCORD:
$ gcc -o echo_server.exe echo_server.c