R for Mac OS X Developer's Page

This is the new home for experimental binaries and documentation related to R for Mac OS X. To learn more about the R software or download released versions, please visit www.r-project.org.

All software on this page is strictly experimental and subject to acceptance of the supplied R license agreement and the disclaimer at the end of the page.

In addition to this nightly generated page, visit the Building R page for the most recent tips.

Index

Universal nightly builds for Mac OS X (10.5 Leopard and higher)

R framework

Requirements: Mac OS X 10.5 or higher. For additional tools necessary for compiling packages, see below - Xcode 3.1 or higher is required on OS X 10.5 (Leopard) and Xcode 3.2 or higher on OS X 10.6 (Snow Leopard).

The installer image (*.pkg) is packaged exactly the same way as the CRAN release of R (including the GUI) and it will update your R version (unless you use pkgutil - see instructions during installation). Alternatively you can use the tar-ball (*.tar.gz) which must be unpacked in the root (e.g. tar fvxz R*.tar.gz -C /), but doesn't contain the GUI (see below for a separate download).

On the command line the R is by default 32-bit, for 64-bit use R --arch x86_64 (Intel Macs) or R --arch ppc64 (PowerPC G5). The above Leopard installer package installs the 32-bit GUI as R.app and the 64-bit GUI as R64.app.

Mac OS X GUI

To install, open the image and drag the R icon to your Applications folder. Alternatively the GUI can be run directly off that image without copying if you just want to test it. Build configurations with "64" suffix are 64-bit builds, all others are 32-bit. If you want to use both, rename one of them or place them in different directories.

Tools

In order to compile R and R packages you will need Xcode Developer Tools version 3.1 or higher and a universal Fortran compiler. For details and download, please read the Tools page.

Building universal binaries

Starting with R 2.5.0 CRAN binaries use Apple's 10.4u SDK allowing universal builds on both PowerPC and Intel Macs. Building universal R is done by compliling two R binaries and setting r_arch parameter to ppc and i386 respectively, along with the proper compiler flags. Those two builds can then be installed into the same framework location, R install process merges them correspondingly.

To build an universal package that contains a configure script, it is necessary to run R CMD twice. Assuming you have a source package foo_0.1.tar.gz, this is how you install it universally:

R CMD INSTALL foo_0.1.tar.gz
R --arch=ppc CMD INSTALL --libs-only foo_0.1.tar.gz
R --arch=x86_64 CMD INSTALL --libs-only foo_0.1.tar.gz
(Note: if the package doesn't contain a configure script, regular single-step installation actually works). You can create a binary package by packing such installed package into a tar ball. The resulting binary will work on both PowerPC and Intel-based Macs.

Legacy R

The current build supports only Mac OS X 10.5 (Leopard) or higher. Older versions of OS X are not supported in binary form, but R can be compiled from sources for such legacy OS versions. Last released version for Mac OS X 10.4 (Tiger) was R 2.10.1.

Other binaries

The following binaries are not maintained or supported by R-core and are provided without any guarantee and for convenience only (Mac OS X 10.4.4 or higher required). They match the binaries used on the CRAN binary build machine and thus are recommended for use with CRAN R package binaries.

More external libraries and older versions can be found in the /libs/ directory.

Disclaimer

All software is provided "as is" and any express or implied warranties, including, but but not limited to the implied warranties of merchantability and fitness for a particular purpose are disclaimed. In no event shall AT&T, the publisher, copyright owner or contributors be liable for any direct, indirect, incidental,special, exemplary, or consequential damages (including, but not limited to, procurement of substitute goods or services; loss of use, data or profits; or business interruption) however caused and on any theory of liability, whether in contract, strict liability, or tort (including negligence or otherwise) arising in any way out of the use of this software, even if advised of the possibility of such damage.