On Oct 7, 2004, at 3:38 PM, Russell E. Owen wrote:
> In article <552D13C8-17CF-11D9-A1CC-000A95686CD8 at redivi.com>,
> Bob Ippolito <bob at redivi.com> wrote:
>>> On Oct 6, 2004, at 3:34 PM, Russell E. Owen wrote:
>> ..
>>> In article <BAA61254-1759-11D9-88CF-000A95686CD8 at redivi.com>,
>>> Bob Ippolito <bob at redivi.com> wrote:
>>> ...
>>> - As an extension to that question...any hints on installing tcl
>>> extensions ("snack", specifically) into such a bundled app?
>>>> No idea, give me instructions on how to do it and a minimal example
>> that uses it and I'll see what can be done.
>> Aqua Tcl extensions live in /Library/Tcl, typically each in its own
> subfolder. For example snack lives in /Library/Tcl/snack2.2/
>> When bundled, Tcl can find extensions in
> Contents/Frameworks/Tcl.framework/Resources/
> e.g. for snack:
> Contents/Frameworks/Tcl.framework/Resources/snack2.2/
>> (That may not be the best location, but it works. I found it by trial
> and error.).
>> I can put together a sample app and send it along separately if you
> like.
I'm more interested in having a development environment that mirrors
yours to see if it's possible or reasonable to find usage of snack
automatically. Depending on how Tcl extensions are linked, it might be
necessary to rewrite their mach headers (or else you can, in theory,
get the same "version mismatch" problem that Python has).
If Tcl can find extensions in
Contents/Frameworks/Tcl.framework/Resources when *not* bundled, that
might be a good place to put them.. because py2app makes little attempt
to strip down frameworks other than Python.framework. For versioned
frameworks, it will skip the versions you are not linking to, but
everything in that version (and anything outside of versioned
directories) will be copied.
-bob