Opened 11 years ago

Closed 8 years ago

#22954 closed defect (duplicate)

wish does not run on Snow Leopard

Reported by: mdippery@… Owned by: mww@…
Priority: Normal Milestone:
Component: ports Version: 1.8.1
Keywords: Cc: jabronson@…, avysk (Alexey Vyskubov), zeph0x@…
Port: tcl

Description

I'm using Mac OS X 10.6.2. I installed the tcl port. It built without problems, but whenever I try to run wish (or a script that uses wish) I get the following error:

TclMacOSXNotifierAddRunLoopMode: Tcl not built with CoreFoundation support

wish then crashes.

Attachments (2)

tcl.patch (521 bytes) - added by mdippery@… 11 years ago.
Patch to re-enable CoreFoundation support in tcl
tcl.2.patch (521 bytes) - added by zeph0x@… 10 years ago.
mdippery's patch to re-enable CoreFoundation support in tcl, updated for version 8.5.9 of tcl.

Download all attachments as: .zip

Change History (18)

comment:1 Changed 11 years ago by mf2k (Frank Schima)

Keywords: snowleopard removed
Owner: changed from macports-tickets@… to mww@…

wfm on Snow Leopard.

Please post the output of the following:

port installed tcl

comment:2 Changed 11 years ago by blb@…

Port: tk added; tcl removed

Note that the tk port is what gives you wish, so the output from

port installed tcl tk

would be more interesting.

comment:3 in reply to:  2 Changed 11 years ago by mdippery@…

Replying to blb@…:

Note that the tk port is what gives you wish, so the output from

port installed tcl tk

would be more interesting.

Here it is:

The following ports are currently installed:
  tcl @8.5.8_0+darwin+threads (active)
  tk @8.5.7_0+darwin+quartz (active)

(The version numbers are different because I was able to update Tcl, but Tk failed to update to the newest version. This is described in #21512.)

comment:4 Changed 11 years ago by mdippery@…

After taking another look, I'm guessing that the real issue is that the +quartz variant for tk doesn't build on Snow Leopard.

comment:5 Changed 11 years ago by jmroot (Joshua Root)

Resolution: duplicate
Status: newclosed

comment:6 Changed 11 years ago by mdippery@…

I re-examined this issue and found that while the problem cropped up when I launched MacPorts' wish, the issue *is* with tcl, not tk. The problem is that the --disable-corefoundation flag is passed to ./configure when building tcl, but building without CoreFoundation support breaks the +quartz variant of tk.

I'm not sure why tcl is built without CoreFoundation support. I did find this post which describes the issue, but clearly fixing *that* issue also breaks usage of tcl with tk +quartz.

I'm posting a patch that fixes the problem, although perhaps it'd be better to allow tcl to have a CoreFoundation-enabled variant? I'll let the maintainers think about it.

Changed 11 years ago by mdippery@…

Attachment: tcl.patch added

Patch to re-enable CoreFoundation support in tcl

comment:7 Changed 10 years ago by blb@…

Port: tcl added; tk removed
Resolution: duplicate
Status: closedreopened

Reopening as it is a separate issue from tk+quartz (this is for Tcl's CoreFoundation support).

comment:8 Changed 10 years ago by jabronson@…

Cc: jabronson@… added

Cc Me!

comment:9 Changed 10 years ago by jmroot (Joshua Root)

I remember claims that CF support caused problems being brought up in relation to one of the recent Tcl/Tk updates.

comment:10 Changed 10 years ago by avysk (Alexey Vyskubov)

Cc: tascafoo@… added

Cc Me!

comment:11 in reply to:  description ; Changed 10 years ago by JACurrivan@…

Replying to mdippery@…:

I'm using Mac OS X 10.6.2. I installed the tcl port. It built without problems, but whenever I try to run wish (or a script that uses wish) I get the following error:

TclMacOSXNotifierAddRunLoopMode: Tcl not built with CoreFoundation support

wish then crashes.

Hi everyone, I am also having this problem. I am new to MacPorts, can someone run through steps for how to use this tcl.patch? I am not sure which folder I need to be in to apply the patch. Is it as simple as finding that folder and then doing something like "patch -p1 < tcl.patch" ? Thanks.

Changed 10 years ago by zeph0x@…

Attachment: tcl.2.patch added

mdippery's patch to re-enable CoreFoundation support in tcl, updated for version 8.5.9 of tcl.

comment:12 Changed 10 years ago by zeph0x@…

Cc: zeph0x@… added

Cc Me!

comment:13 in reply to:  11 Changed 10 years ago by zeph0x@…

Hi everyone, I am also having this problem. I am new to MacPorts, can someone run through steps for how to use this tcl.patch? I am not sure which folder I need to be in to apply the patch. Is it as simple as finding that folder and then doing something like "patch -p1 < tcl.patch" ? Thanks.

Do this:

$ cd /opt/local/var/macports/sources/rsync.macports.org/release/ports/lang/tcl
$ sudo patch < ~/Downloads/tcl.2.patch 
$ sudo port install tcl

All Portfiles are found in the /opt/local/var/macports/sources/rsync.macports.org/release/port. You can run a find command from there to find your port:

$ find . -type d -iname tcl
./lang/tcl
$ 

Or use the port command to find what folder it is in

$ port info tcl
tcl @8.5.9, Revision 1 (lang)

comment:14 Changed 10 years ago by macports@…

The issue seems to be back. wish or using it provide the error. So tcl 8.5.9 does not have the patch from mdippery can someone add it in please

port installed tcl tk
The following ports are currently installed:
  tcl @8.5.7_1+darwin
  tcl @8.5.8_0
  tcl @8.5.8_0+darwin
  tcl @8.5.8_0+universal
  tcl @8.5.9_0+universal (active)
  tk @8.5.7_0+darwin+quartz (active)

comment:15 Changed 9 years ago by lkraider (Paul Eipper)

I'm seeing this issue too, patch fixes it.

Snow Leopard 10.6.8
macports 2.0.1
tcl @8.5.9_0+threads

comment:16 Changed 8 years ago by jmroot (Joshua Root)

Resolution: duplicate
Status: reopenedclosed
Note: See TracTickets for help on using tickets.