X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/fe56965b7f6e27a5d10b805e82c9bf41ed8055fc..1fb08526acab831aacfd4549efd32f84b31a24a5:/docs/osx/install.txt?ds=sidebyside diff --git a/docs/osx/install.txt b/docs/osx/install.txt index e43d338380..a0ab245450 100644 --- a/docs/osx/install.txt +++ b/docs/osx/install.txt @@ -1,25 +1,73 @@ -wxWidgets for Mac installation ------------------------------- +wxWidgets for Mac OS X installation +----------------------------------- -On MacOS X, you can download Apple's free developer tools (gcc -and associated headers and libraries, such as the Carbon API). -You can then use configure in a similar way to compiling -wxWidgets on Linux (or on Windows using MinGW or Cygwin). See -'Apple Developer Tools' below for more details on using -configure. +wxWidgets can be compiled using Apple's Carbon or Cocoa libraries. +Carbon is the older library, and Cocoa is the more modern library. +In wxWidgets 2.9.x, Cocoa is the recommended library. While Carbon is still +supported by Apple, little new work is being done in Carbon. -Apple Developer Tools: command line ------------------------------------ +Most Mac OS X developers should start by downloading and installing Xcode +from http://developer.apple.com. It is a free IDE from Apple that provides +all of the tools you need for working with wxWidgets. + +After Xcode is installed, download either wxWidgets-{version}.tar.gz or +wxMac-{version}.tar.gz and then double-click on it to unpack it to create +a wxWidgets directory. + +Next use Terminal (under Applications, Utilities, Terminal) to access a command +prompt. Use cd to change directories to your wxWidgets directory and execute +one of the following sets of commands from the wxWidgets directory. + +For Carbon, you'll need to have Xcode 3.x installed (you can also have Xcode 4.x +installed, but the Carbon build needs 3.x, and the /Developer directory which is +installed when you install Xcode 3.x. + +--------- + +# Build the library for Cocoa (wxWidgets 2.9.0 and later) +mkdir build-cocoa-debug +cd build-cocoa-debug +../configure --with-osx_cocoa --enable-debug +make +# Build the samples and demos +cd samples; make;cd .. +cd demos; make;cd .. + +--------- + +# Build the library for Carbon +mkdir build-carbon-debug +cd build-carbon-debug +../configure --enable-debug --disable-shared --enable-macosx_arch=i386 --with-macosx-sdk=/Developer/SDKs/MacOSX10.6.sdk CC=/Developer/usr/bin/gcc-4.2 CXX=/Developer/usr/bin/g++-4.2 LD=/Developer/usr/bin/ld +make +# Build the samples and demos +cd samples;make;cd .. +cd demos; make;cd .. + +--------- -As in all Unix projects, you need to do something like this under MacOS X -with the Apple Developer Tools installed: +After the compilation completes, use Finder to run the samples and demos + Go to build-carbon-debug/samples to experiment with the Carbon samples. + Go to build-carbon-debug/demos to experiment with the Carbon demos. + Go to build-cocoa-debug/samples to experiment with the Cocoa samples. + Go to biuld-cocoa-debug/demos to experiment with the Cocoa demos. +Double-click on the executables which have an icon showing three small squares. +The source code for the samples is in wxWidgets/samples +The source code for the demos is in wxWidgets/demos -1) cd into the base dir -2) mkdir osx-build -3) cd osx-build -4) ../configure (add --with-osx_cocoa for the Cocoa port) -5) make +--------- + +More information about building on Mac OS X is available in the wxWiki. +Here are two useful links + http://wiki.wxwidgets.org/Guides_%26_Tutorials + http://wiki.wxwidgets.org/Development:_wxMac + +--------- + +More advanced topics are covered below. + +--------- If you want to install the library into the system directories you'll need to do this as root. The accepted way of running commands as root is to @@ -36,15 +84,6 @@ is to configure wxWidgets with --disable-shared. Another way to avoid it is to make a framework for wxWidgets. Making frameworks is beyond the scope of this document. -Note: -We recommend you configure a static library instead: - -4) ../configure --disable-shared - -or activate OpenGL: - -4) ../configure --with-opengl - Note: It is rarely desirable to install non-Apple software into system directories. By configuring the library with --disable-shared and using the full path @@ -72,9 +111,16 @@ The Xcode projects for the wxWidgets library and minimal project are set up to create universal binaries. If using the Apple command line tools, pass --enable-universal_binary when -configuring wxWidgets. If you use wx-config --libs to link your application, -he necessary linker flags will be added. When compiling your own files, -you need to add -arch ppc -arch i386 to your CFLAGS. +configuring wxWidgets. This will create the libraries for all the supported +architectures, currently ppc, i386 and x86_64 when using Cocoa (Carbon isn't +available in 64 bit builds). You may explicitly specify the architectures to +use as a comma-separated list, e.g. --enable-universal_binary=i386,x86_64. + +Notice that if you use wx-config --libs to link your application, the -arch +flags are not added automatically as it is possible to link e.g. x86_64-only +program to a "fat" library containing other architectures. If you want to +build a universal application, you need to add the necessary "-arch xxx" flags +to your project or makefile separately. As an alternative to using --enable-universal_binary, you can build for each architecture separately and then use the lipo tool to glue the