]>
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 | |
14ff1954 MW |
62 | Note that gcc's precompiled headers do not work on current versions of |
63 | Cygwin. If your version of Cygwin is affected you will need to use the | |
64 | --disable-precomp-headers configure option. | |
65 | ||
b7b45f6f | 66 | c) Borland |
b7b45f6f | 67 | |
f6eff86e | 68 | Please refer to the docs/msw/install.txt. The console sample compiles and |
dcb39c53 | 69 | runs but does not pass all tests. |
f6eff86e VZ |
70 | |
71 | d) Watcom | |
72 | ||
73 | The compilation has been tested only with OpenWatcom but should also work | |
74 | with Watcom 11.0 but probably not the earlier versions. | |
75 | ||
76 | To build wxBase itself (only static library build is supported), enter the | |
77 | directory src\msw and type "wmake -f makebase.wat". See also Watcom notes in | |
78 | docs/msw/install.txt. | |
79 | ||
80 | There is makefile.wat in samples\console which can be used to build the | |
81 | console sample with Watcom and also shows how can you write your own | |
82 | makefiles for wxBase and Watcom compiler. | |
83 | ||
84 | e) Other compilers | |
22b41d3e VZ |
85 | |
86 | Unfortunately we don't have the makefiles for any other compilers yet. | |
87 | Please contact us if you would like to help us with creating one for the | |
88 | compiler you use. | |
89 | ||
f6eff86e | 90 | |
22b41d3e VZ |
91 | 3. Installing under Unix/BeOS |
92 | ----------------------------- | |
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 | |
3450f97f | 102 | % ../configure --disable-gui |
f6eff86e VZ |
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 | |
3450f97f | 111 | % ../configure --disable-gui --enable-debug |
f6eff86e | 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 | ||
8a606bb0 | 132 | * Mailing lists: see http://lists.wxwidgets.org/ for more information |
22b41d3e | 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 |