Building wxPython 2.9 ===================== This file describes how I build wxWidgets and wxPython while doing development and testing, and is meant to help other people that want to do the same thing. Those readers who have attempted this in previous releases of the software will probably notice that this file is *much* smaller than it was before. Much thanks for this goes to Kevin Ollivier who wrote the initial version of the new build scripts and then guilted me into starting to use and maintain them myself. Building of both wxWidgets and wxPython is now handled by the wxPython/build-wxpython.py script in the source tree. It takes care of all the nasty and confusing details that used to be documented in this file. Pretty much all you need to worry about now is having the build tools and dependent libraries installed on your system and specifying where to install the results, if other than the standard location. If you want to make changes to any of the ``*.i`` files, (SWIG interface definition files,) then you will need to use a special patched version of SWIG. Get the sources for version 1.3.29, and then apply the patches in wxPython/SWIG and then build SWIG like normal. See the README.txt in the wxPython/SWIG dir for details about each patch. You can also get a pre-patched version of the SWIG sources plus a Windows binary at:: http://wxpython.wxcommunity.com/tools/ If you install this build of SWIG to a location that is not on the PATH (so it doesn't interfere with an existing SWIG install for example) then you can set a SWIG environment variable to the full path of this new binary to tell the build script which SWIG to use. The build script ---------------- To build wxPython, simply run the build script something like this:: cd wxPython-src-184.108.40.206/wxPython python2.6 build-wxpython.py --build_dir=../bld Be sure to use the same verison of Python to run the script that you would like to use the wxPython binaries with. If you would also like to install wxWidgets and wxPython then simply add the --install flag. You should also check the --help output of the build-wxpython.py script to see what other options are available. The current build options as of this writing are:: $ python2.6 build-wxpython.py --help Usage: build-wxpython.py [options] Options: --version show program's version number and exit -h, --help show this help message and exit --build_dir=BUILD_DIR Directory to store wx build files. (Not used on Windows) --clean Clean files from build directories. Default is all build files. Specify 'wx' to clean just the wx build, 'py' for just the wxPython build, and 'pyext' for just the built extension modules. --debug Build wxPython with debug symbols --extra_make=EXTRA_MAKE Extra args to pass on [n]make's command line. --extra_setup=EXTRA_SETUP Extra args to pass on setup.py's command line. --force_config Run configure when building even if the script determines it's not necessary. --install Install the built wxPython into installdir or standard location --installdir=INSTALLDIR Directory to install wxWidgets to. --mac_framework Build wxWidgets as a Mac framework. --mac_lipo EXPERIMENTAL: Create a universal binary by merging a PPC and Intel build together. --no_config Turn off configure step on autoconf builds --osx_cocoa Build the OS X Cocoa port on Mac (experimental) --prefix=PREFIX Prefix value to pass to the wx build. --reswig Allow SWIG to regenerate the wrappers --unicode Build wxPython with unicode support (always on for wx2.9) --wxpy_installdir=WXPY_INSTALLDIR Directory to install the wxPython binaries. Have fun.