Getting "tcl wasn't compiled with threads enabled" error

Bernard Desgraupes bdesgraupes at
Sat Sep 1 23:24:11 PDT 2007

Ryan Schmidt wrote:

> On Sep 1, 2007, at 12:00, Bernard Desgraupes wrote:
>> OK, I've solved my problem: I edited the Portfile and added  manually 
>> --enable-threads to the [configure.args] proc arguments  and rebuilt 
>> tcl from scratch. Then I fiddled with sym links to make  sure that 
>> the tclsh in /usr/bin points to /opt/local/bin/tclsh and  similarly 
>> with the file.
>> After that, the selfupdate configuration went fine.
>> I'm still wondering why the --enable-threads configure argument is  
>> not present by default (or at least via a variant) if it is needed  
>> by something as basic as "port selfupdate".
>> I'm probably missing something.
> It sounds like a rogue Tcl in /usr/local was interfering. I recommend  
> you remove it, and anything else you have directly in /usr/local. It  
> will likely interfere with other MacPorts ports. I recommend you  
> install any software you need by using MacPorts. If ports do not  
> exist for software you want, they can probably be created.

thanks for the reply.

Yes, I have aTcl in /usr/local but it seems that this is now the 
location ($prefix) where Tcl's Makefile installs. In the past the prefix 
was just /usr.  Now the configure script says:
if test "${prefix}" = "NONE"; then

I periodically rebuild my Tcl (and Tcl.framework too) from newly 
released sources or from CVS HEAD: so tclsh gets installed in 
/usr/local/bin. Never mind, now I'm aware of the issue, I think I can 
cope with it.

Yet the original question still holds: why doesn't the Tcl Portfile have 
the --enable-threads argument if threads are required to be enabled when 
executing a "port selfupdate" ?




More information about the macports-users mailing list