]>
Commit | Line | Data |
---|---|---|
1 | Build Instructions | |
2 | ------------------ | |
3 | I used SWIG (http://www.swig.org) to create the source code for the | |
4 | extension module. This enabled me to only have to deal with a small | |
5 | amount of code and only have to bother with the exceptional issues. | |
6 | SWIG takes care of the rest and generates all the repetative code for | |
7 | me. You don't need SWIG to build the extension module as all the | |
8 | generated C++ code is included under the src directory. | |
9 | ||
10 | I added a few minor features to SWIG to control some of the code | |
11 | generation. If you want to play around with this you will need to get | |
12 | a recent version of SWIG from their CVS or from a daily build. See | |
13 | http://www.swig.org/ for details. | |
14 | ||
15 | wxPython is organized as a Python package. This means that the | |
16 | directory containing the results of the build process should be a | |
17 | subdirectory of a directory on the PYTHONPATH. (And preferably should | |
18 | be named wxPython.) You can control where the build process will dump | |
19 | wxPython by setting the TARGETDIR variable for the build utility, (see | |
20 | below.) | |
21 | ||
22 | ||
23 | 1. Build and install wxWindows as described in its BuildCVS.txt or | |
24 | INSTALL.txt file. For *nix systems I run configure with these | |
25 | flags: | |
26 | ||
27 | --with-gtk | |
28 | --with-libjpeg | |
29 | --without-odbc | |
30 | --enable-unicode=no | |
31 | --enable-threads=yes | |
32 | --enable-socket=yes | |
33 | --enable-static=no | |
34 | --enable-shared=yes | |
35 | --disable-std_iostreams | |
36 | ||
37 | You can use whatever flags you want, but these work for me. | |
38 | ||
39 | For Win32 systems I use Visual C++ 6.0, but 5.0 should work. The | |
40 | build utility currently does not support any other win32 | |
41 | compilers. Be sure to copy include/wx/msw/setup0.h to | |
42 | include/wx/msw/setup.h and edit it for the options you want. | |
43 | ||
44 | ||
45 | 2. For either platform, you should be sure to set an environment | |
46 | variable named WXWIN to be the path to the top of the wxWindows | |
47 | tree. | |
48 | ||
49 | 3. If you are working from a copy of the code retrieved from CVS, then | |
50 | you will find wxPython in $WXWIN/utils/wxPython. If you are | |
51 | working from the tar.gz or .zip files then you will probably want | |
52 | to unpack wxPython in the $WXWIN/utils directory and rename the new | |
53 | directory to wxPython (or use a symlink.) If you want to keep it | |
54 | in a separate directory then you can change where the build.py tool | |
55 | expects to find it by creating a file named build.local (see step 6 | |
56 | for more examples about build.local,) containing something like | |
57 | this: | |
58 | ||
59 | WXPSRCDIR = "~/MyStuff/wxPython-2.1.11/src" | |
60 | ||
61 | ||
62 | 4. At this point you may want to make an alias or symlink, script, | |
63 | batch file, whatever on the PATH that invokes | |
64 | $WXWIN/utils/wxPython/distrib/build.py to help simplify matters | |
65 | somewhat. For example, on my win32 system I have a file named | |
66 | build.bat in a directory on the PATH that contains: | |
67 | ||
68 | python %WXWIN%/utils/wxPython/distrib/build.py %1 %2 %3 %4 %5 %6 | |
69 | ||
70 | ||
71 | 5. Change into the $(WXWIN)/utils/wxPython/src directory. | |
72 | ||
73 | ||
74 | 6. Type "build -b" to build wxPython and "build -i" to install it. | |
75 | ||
76 | The build.py script actually generates a Makefile based on what it | |
77 | finds on your system and information found in the build.cfg file. | |
78 | If you have troubles building or you want it built or installed in | |
79 | a different way, take a look at the docstring in build.py. You may | |
80 | be able to override configuration options in a file named | |
81 | build.local. For example, you can set a new TARGETDIR just by | |
82 | creating a file named build.local in your wxPython source directory | |
83 | and assign a value to it, like this: | |
84 | ||
85 | TARGETDIR = "/usr/local/lib/python1.5/site-packages/wxPython" | |
86 | ||
87 | The build.local file is executed as Python code so you can do very | |
88 | creative things there if you need to. | |
89 | ||
90 | ||
91 | 7. To build and install the add-on modules, change to the appropriate | |
92 | directory under $WXWIN/utils/wxPython/modules and run the build | |
93 | utility again. | |
94 | ||
95 | ||
96 | 8. Change to the $WXWIN/utils/wxPython/demo directory. | |
97 | ||
98 | ||
99 | 9. Try executing the demo program. For example: | |
100 | ||
101 | python demo.py | |
102 | ||
103 | To run it without requiring a console on win32, you can use the | |
104 | pythonw.exe version of Python either from the command line or from a | |
105 | shortcut. | |
106 | ||
107 |