You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
The reason will be displayed to describe this comment to others. Learn more.
Note that we also pull in Accelerate because of this, so if there's any way to shield Julia from that (if nothing else then just to silence the warnings) we should.
The reason will be displayed to describe this comment to others. Learn more.
@ViralBShah calling CFBundleCreate in Tk.jl has the same results as linking against the Tk framework, if you want to avoid setting the environment variable. Or to fix the Tk issue when using the system Tk, you can also directly set the Tcl variable tk_library.
You should probably also add an section to Tk.jl/deps/ext.jl which explicitly loads /usr/lib/lib{tcl,tk}.dylib (or the /S/L/F/Tk.framework/Tk) since we are adding an explicit expectation of using the system Tk framework (and not MacPorts / Homebrew / custom)
76864b1
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I can't see right now if this has already been reverted, but it seems like it should be (unless it fixed the issue with TK_LIBRARY, perhaps)
76864b1
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
It seems to fix it for me - but I want others to try it out.
76864b1
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
OK, this works for the Tk issue. But it would probably be better to move this into the Tk.jl package to avoid linking statically against Tk and, by association, all of the graphics dylibs. Here's a useful resource on how:
http://developer.apple.com/library/mac/#documentation/CoreFoundation/Conceptual/CFBundles/AccessingaBundlesContents/AccessingaBundlesContents.html
In summary, Tk uses CFBundleGetBundleWithIdentifier, which can only be used if the application has been statically linked to a framework, or opened it previously with CFURLCreateWithFileSystemPath / CFBundleCreate.
76864b1
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Note that we also pull in Accelerate because of this, so if there's any way to shield Julia from that (if nothing else then just to silence the warnings) we should.
See #3780 for context
76864b1
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Would it be simpler to not link against these frameworks, and simply set the
TK_LIBRARY
environment variable in Tk.jl?76864b1
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
BTW, it is really convenient now to just download the latest mac 0.2 dmg and try this kind of stuff out. Love the nightlies!
76864b1
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@ViralBShah calling
CFBundleCreate
in Tk.jl has the same results as linking against the Tk framework, if you want to avoid setting the environment variable. Or to fix the Tk issue when using the system Tk, you can also directly set the Tcl variabletk_library
.You should probably also add an section to
Tk.jl/deps/ext.jl
which explicitly loads/usr/lib/lib{tcl,tk}.dylib
(or the/S/L/F/Tk.framework/Tk
) since we are adding an explicit expectation of using the system Tk framework (and not MacPorts / Homebrew / custom)76864b1
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Opened #3794 to track this.