- 论坛徽章:
- 0
|
#include "sys/utsname.h"
#include "semaphore.h"
#include "pthread.h"
#define NBUFF 10
int nitems;
struct{
int buff[NBUFF];
sem_t mutex, nempty,nstored;
}shared;
//void *produce(void *),*consume(void *);
int main (int argc,char **argv)
{
pthread_t tid_produce,tid_consume;
if (argc!=2)
printf("error usage ,please use parament"
nitems=atoi(argv[1]);
sem_init(&shared.mutex,0,1);
sem_init(&shared.nempty,0,NBUFF);
sem_init(&shared.nstored,0,0);
}
[root@LINUXSERVER projectlinux]# gcc -o prodcoms2 prodcoms2.c
/tmp/ccOga3vv.o(.text+0x4b): In function `main':
: undefined reference to `sem_init'
/tmp/ccOga3vv.o(.text+0x5f): In function `main':
: undefined reference to `sem_init'
/tmp/ccOga3vv.o(.text+0x73): In function `main':
: undefined reference to `sem_init'
collect2: ld returned 1 exit status
就上面这个程序,为什么连接的时候会报错呢,不得其解,谁能解答,单独只是编译程序是可以过去得。但不能连接运行。还有线程的函数在我的机器上也是类似的问题,如PTHREAD_CREAT ,等等,不知道是不是要支持POSIX标准的函数要有什么特殊设置么, |
|