]> git.saurik.com Git - wxWidgets.git/blobdiff - docs/osx/install.txt
Use both URL-specific and plain text formats in wxGTK wxURLDataObject.
[wxWidgets.git] / docs / osx / install.txt
index e43d338380e5e0090708f7055c59adbd01dfb4dd..f44e4831c05039304445f02ffa1339e781f874b9 100644 (file)
@@ -1,25 +1,69 @@
-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
+
+---------
+
+# Build the library for Cocoa (wxWidgets 2.9.0 and later)
+mkdir build-cocoa-debug
+cd build-cocoa-debug
+../configure --enable-unicode --enable-debug --disable-shared --with-osx_cocoa
+make;cd ..
+# Build the samples and demos
+cd build-cocoa-debug/samples; make;cd ../..
+cd build-cocoa-debug/demos;   make;cd ../..
+
+---------
+
+# Build the library for Carbon
+mkdir build-carbon-debug
+cd build-carbon-debug
+../configure --enable-unicode --enable-debug --disable-shared
+make;cd ..
+# Build the samples and demos
+cd build-carbon-debug/samples;make;cd ../..
+cd build-carbon-debug/demos;  make;cd ../..
+
+---------
+
+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
+
+---------
+
+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 
+
+---------
 
-As in all Unix projects, you need to do something like this under MacOS X
-with the Apple Developer Tools installed:
+More advanced topics are covered below.
 
-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
+---------
 
 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
@@ -72,9 +116,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