Hej
Jeg har efter en del problemer fået "installeret" ZThreads til på min
RedHat7.3, og har fået lavet noget c++ kode, som bruger ZThreads tråde, men
jeg har et problem når jeg compiler, som umiddelbart ikke har noget med min
kode og gøre, men jeg er endnu ikke en haj til at tolke på compilerens
fejlmeddelelser, så håber at nogen vil hjælpe. Her er mit kode:
#include <unistd.h>
#include <sys/stat.h>
#include <linux/stat.h>
#include <stdio.h>
#include <stdlib.h>
#include "zthread/Thread.h"
//path and filename to the "named pipe"
#define FIFO_FILE "MYFIFO"
using namespace ZThread;
class Transmitter : public Thread{
private:
FILE *fp;
char readbuf[80];
pthread_t thrdReadFIFO;
public:
Transmitter(){
//Create the FIFO if it does not exists
umask(0);
mknod(FIFO_FILE, S_IFIFO|0666,0);
}
void run () throw (){
while(1){
fp=fopen(FIFO_FILE, "r");
fgets(readbuf, 80, fp);
printf("Received string: %s\n", readbuf);
fclose(fp);
}
}
};
int main(void){
Transmitter transmitter;
transmitter.start();
return(0);
}
Og her er fejlmeddelelsen, som jeg får når jeg bruger "g++ -Wall -o kode
kode.cpp":
/tmp/ccaApa1U.o: In function `main':
/tmp/ccaApa1U.o(.text+0x1f): undefined reference to
`ZThread::Thread::start(void)'
/tmp/ccaApa1U.o(.data+0x0): undefined reference to `ZThread::Thread
type_info node'
/tmp/ccaApa1U.o: In function `Transmitter:
Transmitter(void)':
/tmp/ccaApa1U.o(.gnu.linkonce.t._._11Transmitter+0x26): undefined reference
to `ZThread::Thread:
Thread(void)'
/tmp/ccaApa1U.o: In function `Transmitter::Transmitter(void)':
/tmp/ccaApa1U.o(.Transmitter::gnu.linkonce.t.(void)+0xf): undefined
reference to `ZThread::Thread::Thread(void)'
/tmp/ccaApa1U.o(.gnu.linkonce.d.__vt_11Transmitter+0xc): undefined reference
to `ZThread::Thread::cancel(void)'
/tmp/ccaApa1U.o(.gnu.linkonce.d.__vt_11Transmitter+0x10): undefined
reference to `ZThread::Thread::isCanceled(void)'
/tmp/ccaApa1U.o(.gnu.linkonce.d.__vt_11Transmitter+0x14): undefined
reference to `ZThread::Thread::interrupt(void)'
/tmp/ccaApa1U.o: In function `Transmitter type_info function':
/tmp/ccaApa1U.o(.gnu.linkonce.t.__tf11Transmitter+0x10): undefined reference
to `ZThread::Thread type_info function'
collect2: ld returned 1 exit status
Jeg har prøvet at kompilere nogle at nogle af de eksempler som fulgte med
Zthreads, og der var samme type fejl :(
Håber nogen kan fortælle mig hvad jeg gør forkert.
på forhånd tak
allan