- 论坛徽章:
- 0
|
看如下程序:
#include <sys/socket.h>;
#include <netinet/in.h>;
#include <sys/types.h>;
#include <arpa/inet.h>;
#include <stdio.h>;
#include <netdb.h>;
#include <stdlib.h>;
int main(void)
{
int ServerSocket,ClientSocket;
int len;
struct sockaddr_in ServerAddr,ClientAddr;
char Mgs[30]="hello,welcome to unix world!";
ServerSocket=socket(AF_INET,SOCK_STREAM,0);
if (ServerSocket<0) { printf("Create socket failed!" ;exit(1);}
ServerAddr.sin_family=AF_INET;
ServerAddr.sin_port=htons(3100);
ServerAddr.sin_addr.s_addr=htonl(INADDR_ANY);
if ((bind(ServerSocket,(struct sockaddr*)&ServerAddr,sizeof(ServerAddr)))<0)
{
printf("Bind failed!\n" ;
exit(1);
}
listen(ServerSocket,10);
for(;
{
len=sizeof(ServerAddr);
ClientSocket=accept(ServerSocket,(struct sockaddr*)&ClientAddr,&len);
/*printf("Connect from %s,port %d\n",inet_ntoa(ClientAddr.sin_addr.s_addr),ntohs(ClientAddr.sin_port));*/
printf("hello unix" ;
write(ClientSocket,Mgs,30);
close(ClientSocket);
}
}
用#cc test.c后报如下错误:
undefined first referenced
symbol in file
socket comm_eg.o
htons comm_eg.o
htonl comm_eg.o
bind comm_eg.o
listen comm_eg.o
accept comm_eg.o
i386ld fatal:Symbol referencing errors.No output written to a.out
请各位高手帮忙找一下原因:  |
|