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
+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 --enable-unicode --enable-debug --disable-shared --with-osx_cocoa
-make;cd ..
+../configure --with-osx_cocoa --enable-debug
+make
# Build the samples and demos
-cd build-cocoa-debug/samples; make;cd ../..
-cd build-cocoa-debug/demos; make;cd ../..
+cd samples; make;cd ..
+cd 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 ..
+../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 build-carbon-debug/samples;make;cd ../..
-cd build-carbon-debug/demos; make;cd ../..
+cd samples;make;cd ..
+cd demos; make;cd ..
---------
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
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