Hi Michael,

thank you for your quick answer.
I found that the xft font library used by Tk is requiring a link with
ImageIO which causes the trouble. The fix could then be to compile a
new version of Tk without the xft font library.
./configure --enable-framework --disable-xft  (Tcl/Tk as a framework)
./configure --disable-xft  (X11 lib)

Unfortunately there is a documented bug in python on mac when one uses
self installed Tcl/Tk libraries (http://bugs.python.org/msg74544)
One needs to fix the setup.py file in the python source, by putting
the
/System/Library  underneath /Library/Frameworks in the function
detect_tkinter_darwin
(another option would be to install the X11 version of Tcl/Tk) but
then one would also
need to modify setup.py by commenting out detect_tkinter_darwin in
detect_tkinter.
In both cases, one needs to modify the Python setup.py included in the
sage distribution.
What is the best way for doing that ?

Cheers,

 Eric

On 12 jan, 15:16, mabshoff <michael.absh...@mathematik.uni-
dortmund.de> wrote:
> On Jan 12, 5:56 am, sonnen <sonne...@gmail.com> wrote:
>
> Hi Eric,
>
> > Tkinter is not available on the binary distribution of Sage for Mac OS
> > 10.5 (Intel).
> > As I wanted to use the TkAgg backend for matplotib I compiled Sage
> > from the source. However then again import Tkinter failed (even though
> > tk8.4 is installed as a framework). I noticed that _tkinter.so was
> > compiled properly, but was replaced
> > bu _tkinter_failed.so as import _tkinter did not work because it could
> > not
> > find symbol __cg_png_create_info_struct referenced in ImageIO and
> > expected
> > in sage-3.2.3/local/lib/libPng.dylib
>
> Yeah, this is a known issue.
>
> > I found a fix on an apple support 
> > listhttp://lists.apple.com/archives/Unix-porting/2008/Sep/msg00033.html
>
> This isn't a fix since it only work on case sensitive filesystems and
> as long as Apple ships cases insensitive ones we are out of luck.
> Other suggested workarounds like setting something via rpath or
> playing games with env variables also doesn't work or breaks easily
> when for example moving the Sage install.
>
> > The workaround is to rename libpng.dylib from sage and recompile
> > python using
> > sage -f python-2.5.2.p!
> > and matplotlib
> > sage -f matplotlib-0.98.3.p4
> > and everything seems to work.
>
> I don't think it will since there are doctests that depend on "our"
> libpng. It might be a 10.4 specific issue, but nonetheless we chose to
> go with a dynamic libpng even though it creates a certain amount of
> problems. It fixed a number of issues, but it introduced those issues
> you are hitting. The real solution would probably be to get our hands
> on the modifications made by Apple to libpng but AFAIK no one has
> found them yet. Maybe nobody has made a serious effort to get them
> either. In the end it should be possible to build tcl/tk not as
> framework, but that might be some work. I haven't tried and the way it
> looks right now I am not going to have time to look into this any time
> soon.
>
> > It would be nice if this could be fixed properly, maybe by giving
> > another name
> > to libpng.dylib in the mac distribution, and the version with tkinter
> > included
> > in the binary distribution.
>
> This won't work as mentioned above. One way is to link statically, but
> that provides its own set of problems.
>
> > Eric Sonnendrucker
>
> Cheers,
>
> Michael

--~--~---------~--~----~------------~-------~--~----~
To post to this group, send email to sage-support@googlegroups.com
To unsubscribe from this group, send email to 
sage-support-unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/sage-support
URLs: http://www.sagemath.org
-~----------~----~----~----~------~----~------~--~---

Reply via email to