From: Daishi H. <da...@eg...> - 2004-04-13 01:33:18
|
Hi, I just built matplotlib from CVS on debian/linux and mac os x, and had to modify some things. I thought the information might be useful to others, and that people on this list might advise me if there were better fixes. On debian, I had to make the following modification to setupext.py: --- Index: setupext.py =================================================================== RCS file: /cvsroot/matplotlib/matplotlib/setupext.py,v retrieving revision 1.30 diff -c -r1.30 setupext.py *** setupext.py 31 Mar 2004 14:29:35 -0000 1.30 --- setupext.py 13 Apr 2004 00:39:54 -0000 *************** *** 169,177 **** else: tk.withdraw() o.tcl_lib = os.path.join((tk.getvar('tcl_library')), '../') - o.tcl_inc = os.path.join((tk.getvar('tcl_library')), '../../include') o.tk_lib = os.path.join((tk.getvar('tk_library')), '../') o.tkv = str(Tkinter.TkVersion)[:3] return o --- 169,177 ---- else: tk.withdraw() o.tcl_lib = os.path.join((tk.getvar('tcl_library')), '../') o.tk_lib = os.path.join((tk.getvar('tk_library')), '../') o.tkv = str(Tkinter.TkVersion)[:3] + o.tcl_inc = os.path.join((tk.getvar('tcl_library')), '../../include/tcl'+o.tkv) return o --- I'm using a fairly mixed stable/testing/unstable version of debian, so maybe that's the reason for my needing to make this change. On mac os x, I was going to use fink for the dependencies, and so I modified setupext.py as follows: --- Index: setupext.py =================================================================== RCS file: /cvsroot/matplotlib/matplotlib/setupext.py,v retrieving revision 1.30 diff -c -r1.30 setupext.py *** setupext.py 31 Mar 2004 14:29:35 -0000 1.30 --- setupext.py 13 Apr 2004 00:46:31 -0000 *************** *** 36,42 **** 'win32' : 'win32_static', 'linux2' : '/usr', 'linux' : '/usr', ! 'darwin' : '/usr/local', 'sunos5' : os.getenv('MPLIB_BASE') or '/usr/local' } --- 36,43 ---- 'win32' : 'win32_static', 'linux2' : '/usr', 'linux' : '/usr', ! #'darwin' : '/usr/local', ! 'darwin' : '/sw', 'sunos5' : os.getenv('MPLIB_BASE') or '/usr/local' } *************** *** 92,99 **** --- 93,105 ---- inc = os.path.join(basedir[sys.platform], 'include') module.include_dirs.append(inc) module.include_dirs.append(os.path.join(inc, 'freetype2')) + if sys.platform == 'darwin': + module.include_dirs.append(os.path.join(basedir[sys.platform], 'lib/freetype2/include')) + module.include_dirs.append(os.path.join(basedir[sys.platform], 'lib/freetype2/include/freetype2')) module.library_dirs.append(os.path.join(basedir[sys.platform], 'lib')) + if sys.platform == 'darwin': + module.library_dirs.append(os.path.join(basedir[sys.platform], 'lib/freetype2/lib')) if sys.platform == 'win32': module.libraries.append('gw32c') --- Do most of the users of matplotlib on os x not use fink? The stumper for me is that I have been unable to build scipy/numpy for the python that is bundled with os x - has anyone been successful with this? (is this process documented anywhere?) For both debian and os x, I found that I would get the following error: --- File "...../lib/python2.3/site-packages/matplotlib/backends/backend_wx.py", line 611, in get_wx_font self.fontweights[t.get_fontweight()], # Weight KeyError --- where t.get_fontweight() seems to be returning None. I "fixed" this by adding --- Index: backends/backend_gtk.py =================================================================== RCS file: /cvsroot/matplotlib/matplotlib/matplotlib/backends/backend_gtk.py,v retrieving revision 1.81 diff -c -r1.81 backend_gtk.py *** backends/backend_gtk.py 12 Apr 2004 13:32:05 -0000 1.81 --- backends/backend_gtk.py 13 Apr 2004 01:08:20 -0000 *************** *** 89,94 **** --- 89,95 ---- 'normal' : pango.WEIGHT_NORMAL, 'ultrabold' : pango.WEIGHT_ULTRABOLD, 'ultralight' : pango.WEIGHT_ULTRALIGHT, + None : pango.WEIGHT_NORMAL } fontangles = { 'italic': pango.STYLE_ITALIC, Index: backends/backend_wx.py =================================================================== RCS file: /cvsroot/matplotlib/matplotlib/matplotlib/backends/backend_wx.py,v retrieving revision 1.51 diff -c -r1.51 backend_wx.py *** backends/backend_wx.py 5 Apr 2004 12:58:54 -0000 1.51 --- backends/backend_wx.py 13 Apr 2004 01:08:20 -0000 *************** *** 338,344 **** 'heavy' : wxBOLD, 'light' : wxLIGHT, 'ultrabold' : wxBOLD, ! 'ultralight' : wxLIGHT } fontangles = { 'italic' : wxITALIC, 'normal' : wxNORMAL, --- 338,346 ---- 'heavy' : wxBOLD, 'light' : wxLIGHT, 'ultrabold' : wxBOLD, ! 'ultralight' : wxLIGHT, ! None : wxNORMAL ! } fontangles = { 'italic' : wxITALIC, 'normal' : wxNORMAL, --- but there is probably a better/cleaner way to solve this problem... d |