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

Bernard Desgraupes bdesgraupes at orange.fr
Sun Sep 2 02:48:21 PDT 2007



Ryan Schmidt wrote:

> On Sep 2, 2007, at 01:24, Bernard Desgraupes wrote:
>
>> Ryan Schmidt wrote:
>>
>>
>> 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" ?
>
>
> Don't know, and there's no tcl maintainer whom we could ask. Does  
> MacPorts even build itself against the MacPorts tcl if it's present?  
> I thought it always used the system's tcl. Well, except obviously in  
> your case it's using the /usr/local tcl but again that's only because  
> gcc always looks there and we don't know how to turn it off.


I understand.

>
> The first lines of /opt/local/bin/port are:
>
> #!/bin/sh
> #\
> exec /usr/bin/tclsh "$0" "$@"
>
> So it seems the intention is to use the system's tcl, not MacPorts's  
> tcl.


...and this is why it all works just fine like this in the default case. 
This is because the system's Tcl _is_ compiled with threads enabled (see 
last line in /usr/lib/tclConfig.sh). I had messed up my installation 
because I had a freshly compiled Tcl which installed itself in 
usr/local/bin and was not compiled with threads enabled.

>
> We could of course add --enable-threads to the tcl port if that's  
> desired.
>
There could be a variant to turn this on. Anyway the current scheme is 
the best, there's no point relying on a MacPorts-built Tcl when the 
system's Tcl works just fine.

Thanks for the clarification,

Bernard

>
>
>





More information about the macports-users mailing list