develooper Front page | perl.perl5.porters | Postings from March 2000

Are threads supported?

From:
Tom Christiansen
Date:
March 17, 2000 06:48
Subject:
Are threads supported?
Message ID:
4598.953304535@chthon
On OpenBSD 2.6, trying to get Perl built for threads buys you this:

Finding dependencies for av.o.
In file included from perl.h:1629,
                 from av.c:3:
/usr/include/pthread.h:352: warning: #warning "included <pthread.h> without -pthread compiler option"
Finding dependencies for scope.o.
In file included from perl.h:1629,
                 from scope.c:3:
/usr/include/pthread.h:352: warning: #warning "included <pthread.h> without -pthread compiler option"
Finding dependencies for op.o.
In file included from perl.h:1629,
                 from op.c:3:

I killed it, figuring it was no use.  

The pthreads(3) manpage says:

     Having to pass the -pthread flag to cc(1) for every compilation unit and
     linking is an awful kludge.  Future releases will most likely depreceate
     this flag, and instead only use -lpthread during linking.

I went back and manually added -pthread to ccflags and to cppflags
and to ldflags and to lddflags (maybe fewer would have sufficed)
just the last would have sufficed), and tried make clean, and got
this:

cc  -L/usr/local/lib -pthread -o miniperl  miniperlmain.o opmini.o libperl.a -lm -lc
opmini.o: Undefined symbol `_PL_curcop' referenced from text segment
opmini.o: Undefined symbol `_PL_curcop' referenced from text segment
opmini.o: Undefined symbol `_PL_curcop' referenced from text segment
opmini.o: Undefined symbol `_PL_curcop' referenced from text segment
opmini.o: Undefined symbol `_PL_curcop' referenced from text segment
opmini.o: Undefined symbol `_PL_curstash' referenced from text segment
opmini.o: Undefined symbol `_PL_defstash' referenced from text segment
opmini.o: Undefined symbol `_PL_curstash' referenced from text segment
opmini.o: Undefined symbol `_PL_defstash' referenced from text segment

*WHY* does make clean need to build miniperl!?  If you type it often again,
it eventually seems to work.

I pushed and prodded, and got the make to go.  And it fails miserably.

I have now failed to build a threaded Perl on both OpenBSD and on Redhat.
Is there any hope?   Or does this release not support threads?

--tom



nntp.perl.org: Perl Programming lists via nntp and http.
Comments to Ask Bjørn Hansen at ask@perl.org | Group listing | About