Kompilacja biblioteki - gdzie znajduje się błąd?

0

Witam,

Wie ktoś czemu wychodzi mi taki błąd w czasie kompilacji??

"pamdziel.h"

#ifndef PAMDZIEL_H
#define PAMDZIEL_H

#include <sys/types.h>
#include <sys/ipc.h>
#include <sys/sem.h> 

static struct sembuf buf;

void podnies(int semid, int semnum);
void opusc(int semid, int semnum);

#endif        //  #ifndef PAMDZIEL_H

"pamdziel.cpp"

#include "pamdziel.h"

void podnies(int semid, int semnum)
{
	buf.sem_num = semnum;
	buf.sem_op = 1;
	buf.sem_flg = 0;
	if (semop(semid, &buf, 1) == -1)
	{
		perror("Podnoszenie semafora, senop nie dziala");
		exit(1);
	}
} 

void opusc(int semid, int semnum)
{
	buf.sem_num = semnum;
	buf.sem_op = -1;
	buf.sem_flg = 0;
	if (semop(semid, &buf, 1) == -1)
	{
		perror("Opuszczenie semafora");
		exit(1);
	}
}

"zad1.ccp"

#include <sys/types.h>
#include <sys/ipc.h>
#include <sys/shm.h>
#include <sys/sem.h>
#include <stdio.h>
#include <cstdlib>
#include "pamdziel.h"

#define MAX 10

int main(){
int shmid, semid, i;
int *buf;

...

	for (i=0; i<10000; i++){
		opusc(semid, 0);
		buf[i%MAX] = i;
		podnies(semid, 1);
	}
}

g++ -static -l /home/panek/Pulpit/semafor/pamdziel zad1.cpp -o zxc

pewnie robię błąd w kompilacji
dzięki za pomoc

dodanie znaczników <code class="cpp"> - fp

0

Nikt nie pomoże??

0

Przykro mi, tylko mazowsze.
Jaki błąd kompilatora?

0

problem pojawiał się gdy próbowałem użyć kompilacji z biblioteka statyczna to wyrzucało błąd że nie widzi funkcji podnieś i opuść.
a jak po prostu napisałem g++ zad1.cpp pamdziel.cpp -o prog , to komilacja przeszła bez problemu

Pozdr

1 użytkowników online, w tym zalogowanych: 0, gości: 1