MauriDalia Δημοσ. 16 Δεκεμβρίου 2007 Share Δημοσ. 16 Δεκεμβρίου 2007 Καλησπέρα! Προσπαθώντας να τεστάρω το παρακάτω προγραμμα > #include "unp.h" int main(int argc, char **argv) { int listenfd, connfd; pid_t childpid; socklen_t clilen; struct sockaddr_in cliaddr, servaddr; listenfd = Socket(AF_INET, SOCK_STREAM, 0); bzero(&servaddr, sizeof(servaddr)); servaddr.sin_family = AF_INET; servaddr.sin_addr.s_addr = htonl(INADDR_ANY); servaddr.sin_port = htons(SERV_PORT); Bind(listenfd, (SA *) &servaddr, sizeof(servaddr)); Listen(listenfd, LISTENQ); for ( ; ; ) { clilen = sizeof(cliaddr); connfd = Accept(listenfd, (SA *) &cliaddr, &clilen); if ( (childpid = Fork()) == 0) { /* child process */ Close(listenfd); /* close listening socket */ str_echo(connfd); /* process the request */ exit(0); } Close(connfd); /* parent closes connected socket*/ } } void str_echo(int sockfd) { ssize_t n; char line[MAXLINE]; for ( ; ; ) { if ( (n = Readline(sockfd, line, MAXLINE)) == 0) return; /* connection closed by other end */ Writen(sockfd, line, n); } } κανω include το unp.h και στο compile μας εμφανίζει τα παρακάτω λάθη In file included from server.c:1: unp.h:7:63: error: config.h: No such file or directory unp.h:192:30: error: ../lib/addrinfo.h: No such file or directory In file included from server.c:1: unp.h:282: error: conflicting types for âgai_strerrorâ /usr/include/netdb.h:640: error: previous declaration of âgai_strerrorâ was here unp.h:286: error: conflicting types for âgetnameinfoâ /usr/include/netdb.h:649: error: previous declaration of âgetnameinfoâ was here unp.h:290: error: conflicting types for âgethostnameâ /usr/include/unistd.h:845: error: previous declaration of âgethostnameâ was here unp.h:306: error: conflicting types for âinet_ntopâ /usr/include/arpa/inet.h:67: error: previous declaration of âinet_ntopâ was here unp.h:427:2: error: #endif without #if Διαβασα κάπου πως : To unp.h ειναι ενα header που χρησιμοποιει ο stevens στο βιβλίο του [unix network programming] και ο σκοπός του ειναι το interoperatibility μεταξύ διαφορετικών πλατφορμών [solaris BSD linux 2.4 / linux etc]. Μπορείς γενικά να το βρεις εδώ http://www.unpbook.com/ στα sources και με κάποιο τρόπο να το προσθέσεις στο δικό σου codebase είτε να φτίαξεις ένα αντιστοιχο header από την αρχή. _________________ Μπόρει κάποιος να δώσει τα φώτα του τι συμβαίνει με αυτό το αρχείο? Συνδέστε για να σχολιάσετε Κοινοποίηση σε άλλες σελίδες άλλες επιλογές
Επισκέπτης Δημοσ. 16 Δεκεμβρίου 2007 Share Δημοσ. 16 Δεκεμβρίου 2007 Katebase ton kwdika apo edw: http://www.unpbook.com/unpv13e.tar.gz kai kane compile (diabase prwta to README) Συνδέστε για να σχολιάσετε Κοινοποίηση σε άλλες σελίδες άλλες επιλογές
Προτεινόμενες αναρτήσεις
Αρχειοθετημένο
Αυτό το θέμα έχει αρχειοθετηθεί και είναι κλειστό για περαιτέρω απαντήσεις.