| 1 | wxWindows 2.5 for Mac installation |
| 2 | ---------------------------------- |
| 3 | |
| 4 | On MacOS X, you can download Apple's free developer tools (gcc |
| 5 | and associated headers and libraries, such as the Carbon API). |
| 6 | You can then use configure in a similar way to compiling |
| 7 | wxWindows on Linux (or on Windows using MinGW or Cygwin). See |
| 8 | 'Apple Developer Tools' below for more details on using |
| 9 | configure. |
| 10 | |
| 11 | To target on MacOS 8 or 9, you need to buy Metrowerks |
| 12 | CodeWarrior. You can then compile Mac Classic or MacOS X |
| 13 | applications on Mac OS X, or compile Mac Classic or MacOS X |
| 14 | applications on Mac Classic. However you can only run and debug |
| 15 | each type of application on the target operating system. |
| 16 | |
| 17 | Installing latest headers (and Carbon Support) |
| 18 | ---------------------------------------------- |
| 19 | |
| 20 | NOTE: these steps are not necessary for CW Pro 6 and above, |
| 21 | only for CW Pro 5.3. |
| 22 | |
| 23 | The latest build for carbon support leads to a few changes you will have to |
| 24 | follow, in order to successfully compile the code (also necessary if you don't |
| 25 | want to build the carbon targets). |
| 26 | |
| 27 | 1. You need CodeWarrior Pro 5.3 , i.e. 5.0 with all the upgrades. |
| 28 | 2. You have to download the 3.4.0 (or greater) universal interfaces from |
| 29 | ftp://ftp.apple.com/developer/Development_Kits/UniversalHeaders3.4.1.img.bin. |
| 30 | 3. put the Interfaces and Libraries Folder into the MacOS Support folder and |
| 31 | replace older versions. |
| 32 | 4. remove from the MacOS Support folder the separate OpenTransport folder. |
| 33 | 5. open the file MacOS Support:MacHeaders:MacHeaders.c and add the line |
| 34 | #include <ControlDefinitions.h> |
| 35 | after the |
| 36 | #include <Controls.h> |
| 37 | 6. rebuild all MacHeaders from the MacHeaders.mcp project in the same folder. |
| 38 | |
| 39 | If you want to build the carbon targets, you will also need the latest |
| 40 | carbonized version of MSL from Metrowerks, at the time of writing, this meant |
| 41 | applying the changes from the folders: |
| 42 | |
| 43 | CodeWarrior Pro 5:Pre-Release:Carbon & MacOSX Development:Carbonized MSL and |
| 44 | CodeWarrior Pro 5:Pre-Release:Carbon & MacOSX Development:Carbonized Runtimes |
| 45 | (consult the file CodeWarrior Pro 5:Pre-Release:Carbon & MacOSX Development:Carbon & MacOSX README) |
| 46 | |
| 47 | setup.h |
| 48 | ------- |
| 49 | |
| 50 | in order to build wxMac with CodeWarrior, you must copy or alias the file |
| 51 | include/wx/mac/setup0.h to include/wx/setup.h. |
| 52 | |
| 53 | this step is not needed when using the Apple Developer Tools under Mac OS X |
| 54 | since the setup.h file is automatically generated during the configuration. |
| 55 | |
| 56 | OpenGL |
| 57 | ------ |
| 58 | |
| 59 | In order to build opengl support with CodeWarrior, you must install the opengl |
| 60 | libraries and headers from http://developer.apple.com/opengl/index.html |
| 61 | |
| 62 | If you want OpenGL support with CodeWarrior, set wxUSE_OPENGL to 1 in |
| 63 | include/wx/setup.h |
| 64 | |
| 65 | If you don't want OpenGl support, set wxUSE_OPENGL to 0 (the |
| 66 | default) and remove the file OpenGLLibraryStub from the project |
| 67 | before compilation. |
| 68 | |
| 69 | If you want OpenGL support with the Apple Developer Tools under Mac OS X, add |
| 70 | --with-opengl to the arguments of configure when configuring wxMac. |
| 71 | |
| 72 | Project Files |
| 73 | ------------- |
| 74 | |
| 75 | The project files are stored as xml text files and converted to binary |
| 76 | CodeWarrior projects in the distribution (see AppleScript Files below): |
| 77 | - *M5.xml -> *M5.mcp for CodeWarrior 5.3 |
| 78 | - *M6.xml -> *M6.mcp for CodeWarrior 6 |
| 79 | - *M7.xml -> *M7.mcp for CodeWarrior 7 and above. |
| 80 | |
| 81 | In order to build the library (and then the samples) you need to make the |
| 82 | following projects (for CW 5.3, similar process for CW 7): |
| 83 | |
| 84 | :src:wxwindowsM5.mcp |
| 85 | :src:png:pngM5.mcp |
| 86 | :src:tiff:tiffM5.mcp |
| 87 | :src:jpeg:jpegM5.mcp |
| 88 | :src:zlib:zlibM5.mcp |
| 89 | |
| 90 | Note that if using CW 8 and above, when compiling the samples |
| 91 | you may need to edit the target settings, click on Language |
| 92 | Settings, C/++ Language and remove the forward slash at the |
| 93 | start of /wx/wx_cw_d.h (or similar filename). |
| 94 | |
| 95 | AppleScript Files |
| 96 | ----------------- |
| 97 | |
| 98 | Several AppleScript files are provided in the docs:mac directory (currently |
| 99 | only for CodeWarrior 5.3 related projects): |
| 100 | - M5xml2mcp.applescript to convert xml files to CodeWarrior projects |
| 101 | - M5mcp2xml.applescript to convert CodeWarrior projects to xml files |
| 102 | - M5build.applescript to automatically build all samples/demos projects |
| 103 | |
| 104 | Apple Developer Tools |
| 105 | --------------------- |
| 106 | |
| 107 | As in all Unix projects, you need to do something like this under MacOS X |
| 108 | with the Apple Developer Tools installed: |
| 109 | |
| 110 | 1) cd into the base dir |
| 111 | 2) mkdir osx-build |
| 112 | 3) cd osx-build |
| 113 | 4) ../configure |
| 114 | 5) make |
| 115 | |
| 116 | If you want to install the library into the system directories you'll need |
| 117 | to do this as root. The accepted way of running commands as root is to |
| 118 | use the built-in sudo mechanism. First of all, you must be using an |
| 119 | account marked as a "Computer Administrator". Then |
| 120 | |
| 121 | 6) sudo make install |
| 122 | 7) type <YOUR OWN PASSWORD> |
| 123 | |
| 124 | Note that while using this method is okay for development, it is not |
| 125 | recommended that you require endusers to install wxWindows into their |
| 126 | system directories in order to use your program. One way to avoid this |
| 127 | is to configure wxWindows with --disable-shared. Another way to avoid |
| 128 | it is to make a framework for wxWindows. Making frameworks is beyond |
| 129 | the scope of this document. |
| 130 | |
| 131 | Note: |
| 132 | We recommend you configure a static library instead: |
| 133 | |
| 134 | 4) ../configure --disable-shared |
| 135 | |
| 136 | or activate OpenGL: |
| 137 | |
| 138 | 4) ../configure --with-opengl |
| 139 | |
| 140 | Note: |
| 141 | It is rarely desirable to install non-Apple software into system directories. |
| 142 | By configuring the library with --disable-shared and using the full path |
| 143 | to wx-config with the --in-place option you can avoid installing the library. |
| 144 | |
| 145 | Problems with .xpm files |
| 146 | ------------------------ |
| 147 | |
| 148 | if you have downloaded all the files and get errors like : |
| 149 | |
| 150 | Error : the file 'wx/generic/tip.xpm' cannot be opened |
| 151 | tipdlg.cpp line 201 #include "wx/generic/tip.xpm" |
| 152 | |
| 153 | then your cvs has changed the type of the .xpm files to something other than |
| 154 | text, in order to fix this either change the type by using a resource editor |
| 155 | or drag the files from /include/wx/generic/..xpm on the SetTypeFromExtension |
| 156 | application that is included in this folder. This small applet itself queries |
| 157 | the Internet Config, so you will have to associate the "xpm" extension with |
| 158 | CodeWarrior before making use of this applet. |
| 159 | |
| 160 | Missing PLStringFuncsLib |
| 161 | ------------------------ |
| 162 | |
| 163 | You will have to build All Targets for MacOS Support:Libraries:Sources:PLStringFuncs:Glue:PLStringFuncsGlue.mcp |
| 164 | |