diff options
Diffstat (limited to 'INSTALL.md')
-rw-r--r-- | INSTALL.md | 55 |
1 files changed, 44 insertions, 11 deletions
diff --git a/INSTALL.md b/INSTALL.md index 34868143db..34dd9fed8e 100644 --- a/INSTALL.md +++ b/INSTALL.md @@ -63,7 +63,7 @@ At Ericsson we have a "Daily Build and Test" that runs on: * x86 * OpenBSD 5.0 * x86\_64 -* Mac OS X 10.5.8 (Leopard), 10.6.0 (Snow Leopard), 10.7.2 (Lion) +* Mac OS X 10.5.8 (Leopard), 10.6.0 (Snow Leopard), 10.7.3 (Lion) * x86 * Windows XP SP3, 2003, Vista, 7 * x86 @@ -645,9 +645,6 @@ Use `hipe:help_options/0` to print out the available options. Mac OS X (Darwin) ----------------- -We test Mac OS X 10.4.11 (Tiger) and Mac OS X 10.5.x (Leopard) in our daily -builds (but only on Intel processors). - Make sure that the command `hostname` returns a valid fully qualified host name (this is configured in `/etc/hostconfig`). @@ -656,6 +653,15 @@ If you develop linked-in drivers (shared library) you need to link using include `-fno-common` in `CFLAGS` when compiling. Use `.so` as the library suffix. +Use the `--enable-darwin-64bit` configure flag to build a 64-bit +binaries on Mac OS X. + +Building universal binaries on Mac OS X (obsolete information) +-------------------------------------------------------------- + +(This information was written when Mac OS X Leopard was the current +release. It may no longer work.) + Universal 32bit binaries can be built on an Intel Mac using the `--enable-darwin-universal` configure option. There still may occur problems with certain applications using this option, but the base @@ -687,34 +693,61 @@ Universal binaries and 64bit binaries are mutually exclusive options. Building a fast Erlang VM on Mac OS Lion ---------------------------------------- -Starting with XCode 4.2, Apple no longer includes a "real" `gcc` +Starting with Xcode 4.2, Apple no longer includes a "real" `gcc` compiler (not based on the LLVM). Building with `llvm-gcc` or `clang` will work, but the performance of the Erlang run-time system will not be the best possible. Note that if you have `gcc-4.2` installed and included in `PATH` -(from a previous version of XCode), `configure` will automatically +(from a previous version of Xcode), `configure` will automatically make sure that `gcc-4.2` will be used to compile `beam_emu.c` (the source file most in need of `gcc`). If you don't have `gcc-4.2.` and want to build a run-time system with the best possible performance, do like this: -Install XCode from the AppStore if it is not already installed. +Install Xcode from the AppStore if it is not already installed. + +If you have Xcode 4.3, or later, you will also need to download +"Command Line Tools" via the Downloads preference pane in Xcode. + +Some tools may still be lacking or out-of-date, we recommend using +[Homebrew](https://github.com/mxcl/homebrew/wiki/installation) or +Macports to update those tools. Install MacPorts (<http://www.macports.org/>). Then: $ sudo port selfupdate $ sudo port install gcc45 +universal -If you want to build the `wx` application, get wxMac-2.8.12 +### Building with wxErlang ### + +If you want to build the `wx` application, you will need to get wxMac-2.8.12 (`wxMac-2.8.12.tar.gz` from -<http://sourceforge.net/projects/wxwindows/files/2.8.12/>) and build: +<http://sourceforge.net/projects/wxwindows/files/2.8.12/>) and install it. + +Export the path for MacOSX10.6.sdk: + + $ export SDK=/Developer/SDKs/MacOSX10.6.sdk - $ arch_flags="-arch i386" ./configure CFLAGS="$arch_flags" CXXFLAGS="$arch_flags" CPPFLAGS="$arch_flags" LDFLAGS="$arch_flags" OBJCFLAGS="$arch_flags" OBJCXXFLAGS="$arch_flags" --prefix=/usr/local --with-macosx-sdk=/Developer/SDKs/MacOSX10.6.sdk --with-macosx-version-min=10.6 --enable-unicode --with-opengl --disable-shared +In Xcode 4.3 the path has changed so use the following instead, + + $ export SDK=/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.6.sdk + +Then configure and build wxMac: + + $ arch_flags="-arch i386" ./configure CFLAGS="$arch_flags" CXXFLAGS="$arch_flags" CPPFLAGS="$arch_flags" LDFLAGS="$arch_flags" OBJCFLAGS="$arch_flags" OBJCXXFLAGS="$arch_flags" --prefix=/usr/local --with-macosx-sdk="$SDK" --with-macosx-version-min=10.6 --enable-unicode --with-opengl --disable-shared + $ make + $ sudo make install + +To link wx properly you will also need to build and install `wxStyledTextCtrl`: + + $ cd contrib/src/stc $ make $ sudo make install +### Finish up ### + Build Erlang with the MacPorts GCC as the main compiler (using `clang` for the Objective-C Cocoa code in the `wx` application): @@ -768,7 +801,7 @@ Copyright and License %CopyrightBegin% -Copyright Ericsson AB 1998-2011. All Rights Reserved. +Copyright Ericsson AB 1998-2012. All Rights Reserved. The contents of this file are subject to the Erlang Public License, Version 1.1, (the "License"); you may not use this file except in |