On Oct 23, 2020, at 9:08 PM, pd-dev-request@lists.iem.at wrote:

Date: Fri, 23 Oct 2020 20:44:24 +0200
From: Jonas Bechtel <post@jbechtel.de>

Hello,

I'm coming from the GNU/Linux world, so I cannot reproduce it here.

AFAIK there's no special dependency on the version. I can run any of pd 0.49 / 0.51 with any of wish 8.5 / 8.6, which are independent packages here.

This is not the case with mac as Tcl/Tk development is a bit behind in some areas, mainly the transition from the Carbon to Cocoa framework for Tk.

Maybe you could use a pre-built wish shell (I'm pretty sure there's a Wish.app containing tcl/tk for recent Mac OS)

No. Please do not.

The version of Tcl/Tk included with macOS for some time is 8.5.9 and is *broken* in a number of ways. This is one reason why we have had to build our own and use it to make the Pd mac .app with embedded Tcl and Tk frameworks. (Another being custom patches currently required for key handling.) This is noted in several places, including the extensive mac/README.txt.

You can even override that with -guicmd CLI option of the compiled C program like this:

Instead of starting the pd core, then the GUI, and manually passing the ports, you could just start the GUI with your chosen wish and it will start the core for you:

wish tcl/pd-gui.tcl

Another option is to override the wish command invoked by the pd core when launching the GUI, using the configure --with-wish. For example, older systems ship with Tk 8.4 and 8.5 and the default "wish" refers to the "wish8.5" app. You could build pd with configure --with-wish wish8.4 to force using Tk 8.4 whenever the core is started first. This is less common for macOS users unless you use a command line alias, etc to start the core form within the app bundle:

$ /Applications/Pd-0.##-#/Contents/Resources/bin/pd

--------
Dan Wilcox
@danomatika
danomatika.com
robotcowboy.com