| For reference and possible critique, I wrote up notes on how I built a Universal matplotlib dist. # Build instructions for a matplotlib distribution on OSX # Using python-2.5 package from python.org # Getting starting quaternion:mpl-build cmoad$ pwd /usr/local/src/mpl-build quaternion:mpl-build cmoad$ ll total 11408 -rw-r--r--@ 1 cmoad staff 1.2M Jul 2 18:06 freetype-2.3.5.tar.bz2 -rw-r--r--@ 1 cmoad staff 600K Nov 9 07:31 libpng-1.2.23.tar.bz2 -rw-r--r-- 1 cmoad wheel 3.8M Nov 29 21:47 matplotlib-0.91.1.tar.gz # Setup environment for Universal builds of libpng and freetype quaternion:mpl-build cmoad$ export MACOSX_DEPLOYMENT_TARGET=10.4 quaternion:mpl-build cmoad$ export CFLAGS="-arch i386 -arch ppc -isysroot /Developer/SDKs/MacOSX10.4u.sdk" quaternion:mpl-build cmoad$ export LDFLAGS="-arch i386 -arch ppc -syslibroot,/Developer/SDKs/MacOSX10.4u.sdk" # Starting with libpng quaternion:mpl-build cmoad$ tar -xjf libpng-1.2.23.tar.bz2 quaternion:mpl-build cmoad$ cd libpng-1.2.23 # To avoid errors with "-M" flags and Universal builds, pass "--disable-dependency-tracking" to configure quaternion:libpng-1.2.23 cmoad$ ./configure --disable-dependency-tracking quaternion:libpng-1.2.23 cmoad$ make -j3 # To make sure we don't link against the dynamic libs, copy the static library to the libpng source root quaternion:libpng-1.2.23 cmoad$ cp .libs/libpng.a ./ # To prove we have a Universal binary quaternion:libpng-1.2.23 cmoad$ file libpng.a libpng.a: Mach-O universal binary with 2 architectures libpng.a (for architecture i386): current ar archive random library libpng.a (for architecture ppc): current ar archive random library # Next to freetype quaternion:libpng-1.2.23 cmoad$ cd ../ quaternion:mpl-build cmoad$ tar -xjf freetype-2.3.5.tar.bz2 quaternion:mpl-build cmoad$ cd freetype-2.3.5 quaternion:freetype-2.3.5 cmoad$ ./configure quaternion:freetype-2.3.5 cmoad$ make -j3 # Copy the freetype static lib to its source root as well quaternion:freetype-2.3.5 cmoad$ cp objs/.libs/libfreetype.a ./ # To prove we have a Universal binary quaternion:freetype-2.3.5 cmoad$ file libfreetype.a libfreetype.a: Mach-O universal binary with 2 architectures libfreetype.a (for architecture i386): current ar archive random library libfreetype.a (for architecture ppc): current ar archive random library # Finally to matplotlib quaternion:freetype-2.3.5 cmoad$ cd ../ # This OSX package from python.org will build Universal python extensions without our help quaternion:mpl-build cmoad$ unset MACOSX_DEPLOYMENT_TARGET quaternion:mpl-build cmoad$ unset CFLAGS quaternion:mpl-build cmoad$ unset LDFLAGS # Point gcc to our new Universal builds of libpng and freetype quaternion:mpl-build cmoad$ export CFLAGS="-arch ppc -arch i386 -I/usr/local/src/mpl-build/libpng-1.2.23 -I/usr/local/src/mpl-build/freetype-2.3.5/include" quaternion:mpl-build cmoad$ export LDFLAGS="-arch ppc -arch i386 -L/usr/local/src/mpl-build/libpng-1.2.23 -L/usr/local/src/mpl-build/freetype-2.3.5" # Now we are ready to build matplotlib quaternion:mpl-build cmoad$ tar -xzf matplotlib-0.91.1.tar.gz quaternion:mpl-build cmoad$ cd matplotlib-0.91.1 # Matplotlib's detected environment for those interested (I already installed numpy) quaternion:matplotlib-0.91.1 cmoad$ python setupegg.py ============================================================================ BUILDING MATPLOTLIB matplotlib: 0.91.1 python: 2.5.1 (r251:54869, Apr 18 2007, 22:08:04) [GCC 4.0.1 (Apple Computer, Inc. build 5367)] platform: darwin REQUIRED DEPENDENCIES numpy: 1.0.4 freetype2: found, but unknown version (no pkg-config) OPTIONAL BACKEND DEPENDENCIES libpng: found, but unknown version (no pkg-config) Tkinter: Tkinter: 50704, Tk: 8.4, Tcl: 8.4 wxPython: no * wxPython not found Gtk+: no * Building for Gtk+ requires pygtk; you must be able * to "import gtk" in your build/install environment Qt: no Qt4: no Cairo: no OPTIONAL DATE/TIMEZONE DEPENDENCIES datetime: present, version unknown dateutil: matplotlib will provide pytz: matplotlib will provide OPTIONAL USETEX DEPENDENCIES dvipng: no ghostscript: /bin/sh: gs: command not found latex: no EXPERIMENTAL CONFIG PACKAGE DEPENDENCIES configobj: matplotlib will provide enthought.traits: matplotlib will provide # Finally build the matplotlib egg quaternion:matplotlib-0.91.1 cmoad$ python setupegg.py bdist_egg # The resulting eggs which should be **cross fingers** 10.3+ compatible quaternion:matplotlib-0.91.1 cmoad$ ll dist/ total 12184 -rw-r--r-- 1 cmoad wheel 5.9M Nov 29 23:03 matplotlib-0.91.1-py2.5-macosx-10.3-fat.egg
# END Attached as well in case line breaks destroy the readability. |
{\rtf1\ansi\ansicpg1252\cocoartf949
{\fonttbl\f0\fswiss\fcharset0 Helvetica;}
{\colortbl;\red255\green255\blue255;}
\margl1440\margr1440\vieww17580\viewh15060\viewkind0
\pard\tx720\tx1440\tx2160\tx2880\tx3600\tx4320\tx5040\tx5760\tx6480\tx7200\tx7920\tx8640\ql\qnatural\pardirnatural
\f0\i\fs24 \cf0 # Build instructions for a matplotlib distribution on OSX\
# Using python-2.5 package from python.org
\i0 \
\
\i # Getting starting
\i0 \
\b quaternion:mpl-build cmoad$
\b0 pwd\
/usr/local/src/mpl-build\
\b quaternion:mpl-build cmoad$
\b0 ll\
total 11408\
-rw-r--r--@ 1 cmoad staff 1.2M Jul 2 18:06 freetype-2.3.5.tar.bz2\
-rw-r--r--@ 1 cmoad staff 600K Nov 9 07:31 libpng-1.2.23.tar.bz2\
-rw-r--r-- 1 cmoad wheel 3.8M Nov 29 21:47 matplotlib-0.91.1.tar.gz\
\
\i # Setup environment for Universal builds of libpng and freetype
\i0 \
\b quaternion:mpl-build cmoad$
\b0 export MACOSX_DEPLOYMENT_TARGET=10.4\
\b quaternion:mpl-build cmoad$
\b0 export CFLAGS="-arch i386 -arch ppc -isysroot /Developer/SDKs/MacOSX10.4u.sdk"\
\b quaternion:mpl-build cmoad$
\b0 export LDFLAGS="-arch i386 -arch ppc -syslibroot,/Developer/SDKs/MacOSX10.4u.sdk"\
\
\i # Starting with libpng
\i0 \
\b quaternion:mpl-build cmoad$
\b0 tar -xjf libpng-1.2.23.tar.bz2 \
\b quaternion:mpl-build cmoad$
\b0 cd libpng-1.2.23\
\
\i # To avoid errors with "-M" flags and Universal builds, pass "--disable-dependency-tracking" to configure
\i0 \
\b quaternion:libpng-1.2.23 cmoad$
\b0 ./configure --disable-dependency-tracking\
\b quaternion:libpng-1.2.23 cmoad$
\b0 make -j3\
\
\i # To make sure we don't link against the dynamic libs, copy the static library to the libpng source root
\i0 \
\b quaternion:libpng-1.2.23 cmoad$
\b0 cp .libs/libpng.a ./\
\
\i # To prove we have a Universal binary
\i0 \
\b quaternion:libpng-1.2.23 cmoad$
\b0 file libpng.a \
libpng.a: Mach-O universal binary with 2 architectures\
libpng.a (for architecture i386): current ar archive random library\
libpng.a (for architecture ppc): current ar archive random library\
\
\i # Next to freetype
\i0 \
\b quaternion:libpng-1.2.23 cmoad$
\b0 cd ../\
\b quaternion:mpl-build cmoad$
\b0 tar -xjf freetype-2.3.5.tar.bz2 \
\b quaternion:mpl-build cmoad$
\b0 cd freetype-2.3.5\
\b quaternion:freetype-2.3.5 cmoad$
\b0 ./configure\
\b quaternion:freetype-2.3.5 cmoad$
\b0 make -j3\
\
\i # Copy the freetype static lib to its source root as well
\i0 \
\b quaternion:freetype-2.3.5 cmoad$
\b0 cp objs/.libs/libfreetype.a ./\
\
\i # To prove we have a Universal binary\
\i0\b quaternion:freetype-2.3.5 cmoad$
\b0 file libfreetype.a \
libfreetype.a: Mach-O universal binary with 2 architectures\
libfreetype.a (for architecture i386): current ar archive random library\
libfreetype.a (for architecture ppc): current ar archive random library
\i \
\
# Finally to matplotlib\
\i0\b quaternion:freetype-2.3.5 cmoad$
\b0 cd ../\
\
\i # This OSX package from python.org will build Universal python extensions without our help
\i0 \
\b quaternion:mpl-build cmoad$
\b0 unset MACOSX_DEPLOYMENT_TARGET\
\b quaternion:mpl-build cmoad$
\b0 unset CFLAGS \
\b quaternion:mpl-build cmoad$
\b0 unset LDFLAGS\
\
\i # Point gcc to our new Universal builds of libpng and freetype
\i0 \
\b quaternion:mpl-build cmoad$
\b0 export CFLAGS="-arch ppc -arch i386 -I/usr/local/src/mpl-build/libpng-1.2.23 -I/usr/local/src/mpl-build/freetype-2.3.5/include"\
\b quaternion:mpl-build cmoad$
\b0 export LDFLAGS="-arch ppc -arch i386 -L/usr/local/src/mpl-build/libpng-1.2.23 -L/usr/local/src/mpl-build/freetype-2.3.5"\
\
\i # Now we are ready to build matplotlib
\i0 \
\b quaternion:mpl-build cmoad$
\b0 tar -xzf matplotlib-0.91.1.tar.gz \
\b quaternion:mpl-build cmoad$
\b0 cd matplotlib-0.91.1\
\
\i # Matplotlib's detected environment for those interested (I already installed numpy)
\i0 \
\b quaternion:matplotlib-0.91.1 cmoad$
\b0 python setupegg.py \
============================================================================\
BUILDING MATPLOTLIB\
matplotlib: 0.91.1\
python: 2.5.1 (r251:54869, Apr 18 2007, 22:08:04) [GCC\
4.0.1 (Apple Computer, Inc. build 5367)]\
platform: darwin\
\
REQUIRED DEPENDENCIES\
numpy: 1.0.4\
freetype2: found, but unknown version (no pkg-config)\
\
OPTIONAL BACKEND DEPENDENCIES\
libpng: found, but unknown version (no pkg-config)\
Tkinter: Tkinter: 50704, Tk: 8.4, Tcl: 8.4\
wxPython: no\
* wxPython not found\
Gtk+: no\
* Building for Gtk+ requires pygtk; you must be able\
* to "import gtk" in your build/install environment\
Qt: no\
Qt4: no\
Cairo: no\
\
OPTIONAL DATE/TIMEZONE DEPENDENCIES\
datetime: present, version unknown\
dateutil: matplotlib will provide\
pytz: matplotlib will provide\
\
OPTIONAL USETEX DEPENDENCIES\
dvipng: no\
ghostscript: /bin/sh: gs: command not found\
latex: no\
\
EXPERIMENTAL CONFIG PACKAGE DEPENDENCIES\
configobj: matplotlib will provide\
enthought.traits: matplotlib will provide\
\
\i # Finally build the matplotlib egg
\i0 \
\b quaternion:matplotlib-0.91.1 cmoad$
\b0 python setupegg.py bdist_egg\
\
\i # The resulting eggs which should be **cross fingers** 10.3+ compatible
\i0 \
\b quaternion:matplotlib-0.91.1 cmoad$
\b0 ll dist/\
total 12184\
-rw-r--r-- 1 cmoad wheel 5.9M Nov 29 23:03 matplotlib-0.91.1-py2.5-macosx-10.3-fat.egg\
}------------------------------------------------------------------------- SF.Net email is sponsored by: The Future of Linux Business White Paper from Novell. From the desktop to the data center, Linux is going mainstream. Let it simplify your IT future. http://altfarm.mediaplex.com/ad/ck/8857-50307-18918-4
_______________________________________________ Matplotlib-devel mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/matplotlib-devel
