当前位置:  技术问答>linux和unix

gcc编译错误,求助!

    来源: 互联网  发布时间:2016-08-09

    本文导语:  源代码如下: 1  #include  "unpthread.h" 2 3  #define MAXFILES     20 4  #define SERV         "80"                /* port number or server name  */ 5 6  struct file { 7  char *f_name; /* filename */ 8 char *f_host; /* hostn...

源代码如下:
1  #include  "unpthread.h"
2
3  #define MAXFILES     20
4  #define SERV         "80"                /* port number or server name  */
5
6  struct file {
7  char *f_name; /* filename */
8 char *f_host; /* hostname or IPv4/IPv6 address */
9 int  f_fd;          /* description */
10 int  f_flags; /* F_xxx below */
11 pthread_t  f_tid;         /* thread ID */
12 } file[ MAXFILES ];
13
14 #define F_CONNECTING 1;      /* connect(  ) in progress */
15 #define F_READING 2;      /* connect(  ) complete; now reading */
16 #define F_DONE 4;      /* all done */
17 #define F_JOINED        8;      /* main has pthread_join'ed */
18
19 #define GET_CMD        "GET %s HTTP/1.0rnrn"
20
21 int ndone;          /* number of terminated threads */
22 pthread_mutex_t ndone_mutex = PTHREAD_MUTEX_INITIALIZER;
23 pthread_cond_t  ndone_cond  = PTHREAD_COND_INITIALIZER;
24
25                            /* globals */
26 int     nconn, nfiles, nlefttoconn, nlefttoread;
27
28                      /* function prototypes */
29 void home_page( const char *, const char * );
30 void *do_get_read( void * );
31 void write_get_cmd( struct file * );
32
33 int
34 main( int argc, char **argv )
35 {
36 int i, n, maxconn;
37 pthread_t tid;
38 struct file *fptr;
39
40 if ( argc f_name );
88 }
89 }
90 Pthread_mutex_unlock( &ndone_mutex );
91 }
92
93 exit( 0 );
94 }
95
96 void *
97 do_get_read( void *vptr )
98{
99 int  fd, n;
100 char  line[ MAXLINE ];
101 struct file *fptr;
102
103 fptr = ( struct file * ) vptr;
104
105 fd = Tcp_connect( fptr->f_host, SERV );
106 fptr->f_fd = fd;
107 printf( "do_get_read for %s, fd %d, thread %dn", 
108 fptr->f_name, fd, fptr->f_tid);
109 write_get_cmd( fptr );                        /* write(  ) the GET command*/
110 /* Read server's reply */
111 for ( ; ; ) {
112 if ( ( n = Read( fd, line, MAXLINE ) ) == 0 )
113 break;                      /* server closed connection */
114 printf( "read %d bytes from %sn", n, fptr->f_name );
115 }
116 printf( "end-fo-file on %sn", fptr->f_name );
117 Close( fd );
118 Pthread_mutex_lock( &ndone_mutex );
119 fptr->f_flags = F_DONE;            /* close F_READING */
120
121 ndone++;
122 Pthread_cond_signal( &ndone_cond );
123 Pthread_mutex_unlock( &ndone_mutex );
124
125 return( fptr );                   /* terminate thread */
126 }
127
128 void
129 write_get_cmd( struct file *fptr )
130 {
131 int n;
132 char line[ MAXLINE ];
133
134 n = snprintf( line, sizeof( line ), GET_CMD, fptr->f_name );
135 Writen( fptr->f_fd, line, n );
136 printf( "worte %d bytes for %sn", n, fptr->f_name );
137
138 fptr->f_flags = F_READING;          /* clear F_CONNECTING */
139 }
140
141 void
142 home_page( const char *host, const char *fname )
143 {
144 int fd, n;
145 char line[ MAXLINE ];
146
147 fd = Tcp_connect( host, SERV );              /* blcoking connect(  ) */
148
149 n = snprintf( line, sizeof( line ), GET_CMD, fname );
150 Writen( fd, line, n );
151
152 for ( ; ; ) {
153 if ( ( n = Read( fd, line, MAXLINE ) ) == 0 )
154 break;                      /* server closed connection */
155 printf( "read %d bytes of home pagen", n );
156 /* do whatever with data */
157 }
158 printf( "end-of-file on home pagen" );
159 Close( fd );
160 }
                                        [web.c]

是UNP中的一个例子,编译命令是:
  gcc -o web web.c -lunp -lpthread
       web.c: 78: error: expected ')' before ';' token
大家帮忙检查一下那里错了  ?

|
14~17行,宏定义1248后面的分号都去掉

F_DONE被替换成了4;
78行经过预处理之后就变成了   if ( file[ i ].f_flags & 4; ) {


    
 
 

您可能感兴趣的文章:

  • arm-linux-gcc交叉编译出错,但gcc编译没错,什么原因呢???
  • 嵌入式linux开发:一段代码在windows平台用VC编译运行正常,在linux平台用gcc编译运行正常,但是用arm-linux-gcc编译在嵌入式板子上运行就不正常.
  • GCC3.4可以编译2.4内核吗 如何查看某版本内核是用哪个版本gcc编译的
  • 使用popen来执行gcc命令,如何根据读出来的gcc的输出来判断gcc是否编译成功?
  • 问:关于gcc编译器和g++编译器
  • 求一个编译好的的gcc编译器
  • 编译GCC时能不能只编译C/C++的编译器?
  • gcc编译时出错,gcc: installation problem, cannot exec `as': 没有那个文件或目录!!!求助呀呀!!!!!
  • 建立较差编译环境,编译gcc-3.4.4出错
  • gcc与arm-linux-gcc编译的问题???
  • Linux下gcc编译时,如何以静态链接的形式编译?
  • Solaris8,安装了iconv,gcc和gcclib,然后用gcc编译c程序出错。
  • 使用eclipse 加入arm-elf-gcc 或arm-linux-gcc 编译器为什么不好使
  • 是否必须用同一版本GCC编译内核、应用程序、库甚至GCC自己?
  • linux x86_64下由于拷贝gcc的lib目录导致gcc编译器出错
  • GCC编译程序时,有自定义头文件,提示找不到该头文件,但他就在这个目录中,如何设置GCC参数?
  • 使用gcc编译器进行代码编译出来的程序是否遵循gpl协议
  • 为什么g++编译通过了,而gcc却编译通过不了???
  • ubuntu 10.10出现极其诡异的情况,使用gcc编译没任何反应,可以继续输入,但是不提示任何错误;使用make编译效果一样;
  • 求助:当用 gcc 编译时没,加上优化选项 -02 ,可是提示是 gcc: unrecognized option `-02'
  • 一套未安装gcc的Linux中安装gcc rpm包时时出现错误
  • 我在Solaris8上安装了gcc3.3Solaris8,但是总是出错!错误如下:gcc: syntax error at line 1: `(' unexpected
  • gcc编译错误
  • 编译 cross-gcc 的错误
  • gcc升级,提示insn-attrtab.o错误
  • gcc-4.4.2升级错误
  • 如何将gcc编译的警告及错误信息保存到文件
  • GCC curses动态库链接的错误
  • 如何将gcc的编译错误输出到一个文本文件?
  • arm-linux-gcc编译XML错误
  • 能否把gcc的错误提示输出到一个文件中?
  •  
    本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
    本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • red hat怎么安装gcc啊!总是出错,求助求助啊!!!yum源怎么改啊!!
  • gcc问题,求助
  • ****求助,关于REDHAT LINUX 9下的GCC编译器问题.............
  • 求助!~~~哪里有gcc下载???最好是rpm的
  • 求助 bash:gcc:command not found
  • 【求助】请问如何替换LINUX中默认的GCC编译器?谢谢!
  • 求助关于GCC的几个参数~~~~
  • gcc编绎问题,求助!
  • 求助:关于gcc的预编译头
  • 求助关于cygwin和gcc使用问题
  • 求助gcc编译头文件出错的问题,急!!!!!!
  • 紧急简单求助: linux下 gcc编译 c程序的命令和步骤! 谢谢!
  • [求助]gcc时,误将-o 参数后面加了 .c ,结果源文件被覆盖了
  • ../gcc命令求助
  • 求助:程序能编译但不能链接,重新安装了GCC也是那样的问题
  • [求助]如何在一个Linux机器上安装一个gcc编译器?
  • 求助啊!ubuntu 交叉编译器 arm-none-linux-gnueabi-gcc
  • arm-linux-gcc 求助
  • 新手求助--linux下安装gcc出现问题请大家帮助
  • 求助:gcc编译.c文件时报错找不到.h,怎么解决?
  • Linux下GCC内置原子操作函数(多线程资源访问)介绍
  • 命令:mips_fp_le-gcc,mipsel-gcc 是什么意思?跟一般的gcc有什么区别?
  • 怎样升级我的GCC呀,我用的RH7.2,GCC 2.96 ,我从网上下载了一个gcc-3.2.3.tar.gz
  • arm-elf-gcc 和 arm-linux-gcc有什么区别?arm-elf-gcc里的elf代表什么?
  • gcc-ccore、avr-gcc及arm-gcc的区别
  • gcc在哪里?bash:gcc:command not found
  • 如何删掉GCC3.0(我需要GCC2.0-----)
  • Windows版GCC TDM-GCC
  • 急问:如何卸掉gcc 3.2庄gcc 2.96
  • 有人遇到过吗,在安装GCC时提示,"checking gcc ...no "
  • GCC无法安装的问题,希望有人帮我( Debian 4.04ra无法安装GCC)


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3