]>
Commit | Line | Data |
---|---|---|
f6eff86e VZ |
1 | wxBase README |
2 | ============= | |
2224580a | 3 | |
22b41d3e | 4 | NB: this file applies to wxBase library only. If you are using a GUI version |
fc2171bd | 5 | of wxWidgets, please refer to the documentation in the appropriate |
22b41d3e | 6 | subdirectory (msw, gtk, motif &c). |
2224580a | 7 | |
2224580a | 8 | |
22b41d3e VZ |
9 | Welcome to wxBase! |
10 | ||
11 | 0. Introduction | |
12 | --------------- | |
13 | ||
fc2171bd | 14 | wxBase is the library providing most of the non-GUI classes of the wxWidgets |
22b41d3e VZ |
15 | cross-platform C++ framework. wxBase has some generic classes such as yet |
16 | another C++ string class, typesafe dynamic arrays, hashes and lists and, more | |
f6eff86e | 17 | excitingly, wxDateTime -- a very flexible and powerful class for manipulating |
22b41d3e VZ |
18 | the dates in the range of 580 million years with up to millisecond precision. |
19 | Another useful class not present in the standard C++ library is wxRegEx which | |
20 | allows you to use regular expressions for string matching and replacing. | |
21 | ||
22 | There are also classes for writing portable programs in C++ painlessly which | |
23 | encapsulate things like files (and their names), directories, processes, | |
24 | threads, sockets and much more. Some of the other utility classes allow you to | |
25 | parse the command line, limit the number of instances of your program | |
26 | executing simultaneously (portably!) and so on. | |
27 | ||
f6eff86e | 28 | |
2edb0bde | 29 | 1. Requirements and supported platforms |
22b41d3e VZ |
30 | -------------------------------------- |
31 | ||
32 | wxBase can be compiled and used under Win32, mostly any modern Unix system | |
f6eff86e VZ |
33 | (including Mac OS X), VMS and BeOS (this release couldn't be tested under |
34 | these platforms so you might encounter some problems but they should be easy | |
35 | to solve -- please contact us in this case!) | |
22b41d3e VZ |
36 | |
37 | It is written without using any modern C++ features (such as templates, | |
38 | exceptions, namespaces) for maximal portability and so you shouldn't have | |
39 | problems compiling it with any C++ compiler at all. However, we only provide | |
f6eff86e VZ |
40 | the project files for Microsoft Visual C++ 6.0 and make files for Borland C++ |
41 | for Win32 (any contributions are welcome!) -- but our Unix makefiles should | |
42 | work with any compiler. | |
43 | ||
22b41d3e VZ |
44 | |
45 | 2. Installing under Win32 | |
46 | ------------------------- | |
47 | ||
48 | Please note that wxBase can be compiled in different configurations under | |
49 | Win32: as a static or shared library, in debug or release mode and in ANSI | |
50 | or Unicode mode for a total of 8 possibilities. | |
51 | ||
52 | a) Using Visual C++ 6.0 | |
53 | ||
dcb39c53 | 54 | Simply open the build/msw/wx_base.dsp file in MSDEV and build it. When it is |
22b41d3e VZ |
55 | done you can also open samples/console/console.dsp project and build it as |
56 | well. | |
57 | ||
58 | b) Cygwin | |
59 | ||
f6eff86e | 60 | Please refer to the Unix section below. |
22b41d3e | 61 | |
b7b45f6f | 62 | c) Borland |
b7b45f6f | 63 | |
f6eff86e | 64 | Please refer to the docs/msw/install.txt. The console sample compiles and |
dcb39c53 | 65 | runs but does not pass all tests. |
f6eff86e VZ |
66 | |
67 | d) Watcom | |
68 | ||
69 | The compilation has been tested only with OpenWatcom but should also work | |
70 | with Watcom 11.0 but probably not the earlier versions. | |
71 | ||
72 | To build wxBase itself (only static library build is supported), enter the | |
73 | directory src\msw and type "wmake -f makebase.wat". See also Watcom notes in | |
74 | docs/msw/install.txt. | |
75 | ||
76 | There is makefile.wat in samples\console which can be used to build the | |
77 | console sample with Watcom and also shows how can you write your own | |
78 | makefiles for wxBase and Watcom compiler. | |
79 | ||
80 | e) Other compilers | |
22b41d3e VZ |
81 | |
82 | Unfortunately we don't have the makefiles for any other compilers yet. | |
83 | Please contact us if you would like to help us with creating one for the | |
84 | compiler you use. | |
85 | ||
f6eff86e | 86 | |
22b41d3e VZ |
87 | 3. Installing under Unix/BeOS |
88 | ----------------------------- | |
89 | ||
fc2171bd | 90 | NB: If you're building wxBase from the wxWidgets distribution and not from a |
22b41d3e VZ |
91 | separate wxBase one you will need to add "--disable-gui" to configure |
92 | arguments below! | |
93 | ||
f6eff86e VZ |
94 | Please note that GNU make may be required to build wxBase, please use it if |
95 | you get any errors from the native Unix make. | |
22b41d3e VZ |
96 | |
97 | The recommended way to build wxBase is: | |
98 | ||
fc2171bd | 99 | % cd ..../wxWidgets |
f6eff86e VZ |
100 | % mkdir base-release # or any other directory of your liking |
101 | % cd base-release | |
102 | % ../configure | |
103 | # ignore the error messages about missing samples | |
104 | % make | |
105 | % make install | |
22b41d3e VZ |
106 | |
107 | You can also do: | |
108 | ||
f6eff86e VZ |
109 | % mkdir base-debug |
110 | % cd base-debug | |
111 | % ../configure --enable-debug | |
112 | % make | |
22b41d3e VZ |
113 | |
114 | To build the sample then cd to samples/console and make there. | |
115 | ||
f6eff86e | 116 | |
22b41d3e VZ |
117 | 4. Documentation and support |
118 | ---------------------------- | |
119 | ||
120 | The console sample provided with this distribution tests most (but not all) | |
121 | wxBase classes. It doesn't do anything useful per itself but you may want to | |
122 | look at its code to see examples of usage of the class you are interested in. | |
123 | ||
fc2171bd | 124 | There is no separate documentation for wxBase, please refer to wxWidgets |
22b41d3e VZ |
125 | documentation instead. |
126 | ||
fc2171bd | 127 | Support for wxBase is available from the same places as for wxWidgets itself, |
22b41d3e VZ |
128 | namely: |
129 | ||
130 | * Usenet newsgroup comp.soft-sys.wxwindows | |
131 | ||
132 | * Mailing lists: see http://lists.wxwindows.org/ for more information | |
133 | ||
fc2171bd | 134 | * WWW page: http://www.wxwidgets.org/ |
22b41d3e VZ |
135 | |
136 | ||
137 | Hope you will find wxBase useful! | |
138 | ||
f6eff86e | 139 | Vadim Zeitlin |