Using pthread on L4/Fiasco
석현철
hcseok at core.kaist.ac.kr
Wed May 23 09:01:41 CEST 2012
Hi. Hackers
I’m trying to use pthread in an application which runs on L4.
I modified “main.c” in Hello application, including “#include
<pthread.h>”.
And when I compiled L4Re, I got error messages:
main.o: In function `main':
/root/l4re-core-2011081207/src/l4/pkg/hello/server/src/main.c:39: undefined
reference to `pthread_create'
/root/l4re-core-2011081207/src/l4/pkg/hello/server/src/main.c:44: undefined
reference to `pthread_join'
make[5]: *** [hello] Error 1
I think this is because it cannot fine pthread.h header file. But I don’t
know how to fix it.
When I looked up previous lists, I could find one thread related to pthread
in 2011 list.
(the thread title is “Silly Pthread Issues”)
I think that it is the same problem, but the reply is only one. Said “Add
REQUIRES_LIBS = libpthread to the Makefile.”
Actually, I tried it, but I couldn’t solve the problem.
How can I use the pthread? Please, Help me!!
Thank you!
Hyunchul Seok
The modified code is below:
#include <stdio.h>
#include <unistd.h>
//#include <pthread-l4.h>
#include <pthread.h>
void *process_test(void *arg)
{
int i = (int)arg;
int j;
for (;;)
{
for (j = 0; j < i; j++) {
printf(" ");
}
printf("%d thread\n", i);
sleep(i);
}
}
int main(void)
{
pthread_t threads[10];
int status[10];
int i;
for (i = 0; i < 3; i++) {
pthread_create(&threads[i], NULL, process_test, (void *)i);
puts("New thread creation!");
}
for (i = 0; i < 3; i++) {
pthread_join(threads[i], (void **)&status[i]);
}
return 0;
}
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://os.inf.tu-dresden.de/pipermail/l4-hackers/attachments/20120523/2ab7422e/attachment.html>
More information about the l4-hackers
mailing list