View Full Version : Perl ithreads ... not installed

Apr 8, 2011, 08:56 AM
hello all,

i am running Mac OS X 10.6.7 (Snow Leopard), and when i type
"perl -V" at the Terminal.app,
it says that "usethreads=undef".

i did install "threads" from CPAN, but in vain.
do you have any ideas, how can i fix this ?

thank you

Apr 8, 2011, 06:36 PM
Under my Mac OS X 10.6.7 my system standard perls have useithread=define.

Output of /usr/bin/perl -V (same as /usr/bin/perl/5.10.0 -V)

Summary of my perl5 (revision 5 version 10 subversion 0) configuration:
osname=darwin, osvers=10.0, archname=darwin-thread-multi-2level
uname='darwin neige.apple.com 10.0 darwin kernel version 10.0.0d8: tue may 5 19:29:59 pdt 2009; root:xnu-1437.2~2release_i386 i386 '
config_args='-ds -e -Dprefix=/usr -Dccflags=-g -pipe -Dldflags= -Dman3ext=3pm -Duseithreads -Duseshrplib -Dinc_version_list=none -Dcc=gcc-4.2'
hint=recommended, useposix=true, d_sigaction=define
useithreads=define, usemultiplicity=define
useperlio=define, d_sfio=undef, uselargefiles=define, usesocks=undef
use64bitint=define, use64bitall=define, uselongdouble=undef
usemymalloc=n, bincompat5005=undef

The output of /usr/bin/perl5.8.9 -V is the similar.

What is the output when you run the command below in Terminal?

which perl

If it's not /usr/bin/perl, you've installed another perl that hasn't been compiled with threads, perhaps via MacPorts.

If you did install a perl via MacPorts, by default it won't compile perl with threads. You need to install the threads variant with a command like the one below.

port install perl5 +threads

Apr 8, 2011, 11:40 PM
thanx jiminaus,

when i typed
which perl
i tried to update that with macports, macports failed to do that.

so now,when i type
which perl
and when i type "/usr/bin/perl -V" it says that "useithreads=define"
so we are ok now.

but, the command "perl -V" instead of "/usr/bin/perl -V"
it says /opt/local/bin/perl: No such file or directory

so, could you please tell me how i can point to the perl implementation installed in /usr/bin/perl instead of returning me the macports location ?

thanx a lot

Apr 9, 2011, 04:28 AM
If perl -V is still trying to invoke /opt/local/bin/perl it's because bash still has that lookup cached. Either run hash -r or simply close the current Terminal window and open a new one.

But if neither of these work, perhaps /usr/bin/perl as been overwritten. What is the output of ls -ld /usr/bin/perl? For me it this,

~$ ls -ld /usr/bin/perl
-rwxr-xr-x 1 root wheel 86000 24 Jun 2009 /usr/bin/perl

Apr 9, 2011, 01:09 PM
thanx a lot, restarting did the job! :)