2010-11-12 8 views
0

Lorsque vous essayez de compiler ce programme:Bibliothèques ne trouve pas dans Cygwin

#include <netinet/in.h> 
#include <sys/socket.h> 
#include <netdb.h> 
#include <stdio.h> 
#include <string.h> 

int main(int argc, char *argv[]) { 

    printf("Hey there\n"); 
    return 0; 
} 

i obtenir compilateur erreur:

test.c:1:24: netinet/in.h: No such file or directory 
test.c:2:24: sys/socket.h: No such file or directory 
test.c:3:19: netdb.h: No such file or directory 

J'utilise Cygwin (sous Windows). Il semble que le compilateur ne trouve aucune des librairies sauf quelques-unes (stdio, string ..., stdlib fonctionne aussi ...). Est-ce un problème de liaison ou cela a-t-il quelque chose à voir avec mon installation de Cygwin? Dois-je spécifier que je veux que ces bibliothèques soient incluses lors de l'installation de Cygwin? S'il vous plaît, aidez, je meurs ici ...

+0

Oui, cygwin vient seulement avec les choses les plus basiques. Vous aurez besoin d'installer ceux si cygwin a même une option pour le faire. – Falmarri

+0

Donc je dois installer Linux? – Awy

+0

Non, pas Linux, paquets cygwin. Linux ferait bien. – nmichaels

Répondre

0

Vous devrez exécuter à nouveau le fichier setup.exe de cygwin et trouver les paquets qui contiennent les en-têtes dont vous avez besoin. Peut-être qu'il y a un paquet net unix quelque part.

+1

Selon http://cygwin.com/packages/cygwin/cygwin-1.7.7-1 ces en-têtes font partie du paquet de base "cygwin" lui-même. Il devrait littéralement être impossible d'installer Cygwin sans eux. – Porculus

-1

Vous voudrez peut-être essayer MingW (http://www.mingw.org).

+0

Cela ne va pas aider. MinGW est une chaîne d'outils pour la programmation Win32; il ne fournit certainement pas l'API des sockets UNIX requise par le code d'Awy. – Porculus

Questions connexes