[Rd] 64-bit R-build on Mac OS X 10.4 - make check failures

From: Steven McKinney <smckinney_at_bccrc.ca>
Date: Wed, 7 Nov 2007 17:00:23 -0800


Hi all,

I compiled 64-bit R on an Apple Mac G5 running OS X, but it failed make check. Simon Urbanek suggested I post results to R-devel.

> On Nov 6, 2007, at 10:23 PM, Steven McKinney wrote:
>

> > Hi Simon,
> >
> > Would you be able to give more guidance on how to compile 64-bit
> > libiconv for Tiger,
>
> You can get the sources from Apple and compile it:
>
http://www.opensource.apple.com/darwinsource/tarballs/other/libiconv-13.2.tar.gz
>
> If you want to save yourself the hassle, my 64-bit build can be
> obtained and installed as follows:
> curl -s http://r.research.att.com/libiconv-quad.tar.gz | \
> sudo tar fvxz - -C /usr/lib

Many thanks to Simon Urbanek for providing a 64-bit libiconv for use on the Apple Mac OS X platform. This allowed compilation on the Mac without having to use the '--without-iconv' switch (for those of us who are not yet proficient at compiling 64-bit libraries on the Mac).

Compilation of 64-bit R succeeded, but make check did not.

First failure was in ok-errors.R, and generated this output in ok-errors.Rout.fail

   > ## bad infinite recursion / on.exit / ... interactions
   > bar <- function() 1+1
   > foo <- function() { on.exit(bar()); foo() }
   > foo() # now simple "infinite recursion"
   

   Traceback:

  1. foo()
  2. foo()
  3. foo() ...
  4. foo()
  5. foo()
  6. foo() aborting ...

Second error was in d-p-q-r-tests.Rout from this test:

   ## dbeta(*, ncp):
   a <- rlnorm(100)
   stopifnot(All.eq(a, dbeta(0, 1, a, ncp=0)),

             dbeta(0, 0.9, 2.2, ncp = c(0, a)) == Inf
             )

   ## the first gave 0, the 2nd NaN in R <= 2.3.0

and generated this
output in d-p-q-r-tests.Rout.fail

   > 
   > ## dbeta(*, ncp):
   > a <- rlnorm(100)
   > stopifnot(All.eq(a, dbeta(0, 1, a, ncp=0)),
   +           dbeta(0, 0.9, 2.2, ncp = c(0, a)) == Inf
   +           )

   Error: dbeta(0, 0.9, 2.2, ncp = c(0, a)) == Inf is not all TRUE    In addition: Warning message:
   In dnbeta(x, shape1, shape2, ncp, log) : NaNs produced    Execution halted

Everything else passed, so I'm not sure how serious these failures are.

I'd appreciate any suggestions about how to figure out what caused these failures (an inappropriate file somewhere in the path, a possible bug, improper compilation commands etc.)

version information of compiled R (compilation information at end):

> sessionInfo()

R version 2.6.0 Patched (2007-10-29 r43302) powerpc64-apple-darwin8.10.0

locale:
C

attached base packages:
[1] stats graphics grDevices utils datasets methods base

other attached packages:
[1] lme4_0.99875-8 Matrix_0.999375-3 lattice_0.17-2

loaded via a namespace (and not attached): [1] grid_2.6.0 rcompgen_0.1-17
> R.Version()

$platform
[1] "powerpc64-apple-darwin8.10.0"

$arch
[1] "powerpc64"

$os
[1] "darwin8.10.0"

$system
[1] "powerpc64, darwin8.10.0"

$status
[1] "Patched"

$major
[1] "2"

$minor
[1] "6.0"

$year
[1] "2007"

$month
[1] "10"

$day
[1] "29"

$`svn rev`
[1] "43302"

$language
[1] "R"

$version.string
[1] "R version 2.6.0 Patched (2007-10-29 r43302)"

> .Platform

$OS.type
[1] "unix"

$file.sep
[1] "/"

$dynlib.ext
[1] ".so"

$GUI
[1] "X11"

$endian
[1] "big"

$pkgType
[1] "source"

$path.sep
[1] ":"

$r_arch
[1] ""

>

I built 64-bit R on Mac OS X 10.4.10 with these commands:

export PATH='/usr/local/lib64/X11/bin:/usr/local/lib64/X11/etc:/usr/local/lib64/X11/include:/usr/local/lib64/X11/lib:/usr/lib:/usr/bin:/usr/local/sbin:/usr/local/bin:/bin:/usr/sbin:/sbin:/usr/local/teTeX/bin/powerpc-apple-darwin-current:~/perl:~/bin'

./configure --host=powerpc64-apple-darwin8.10.0 --build=powerpc64-apple-darwin8.10.0 \ --prefix=/usr/local/lib64 'CC=gcc-4.0 -arch ppc64' 'CXX=g++ -arch ppc64' \

'FC=gfortran-4.0 -arch ppc64' 'F77=gfortran-4.0 -arch ppc64' \
'CFLAGS=-g -O3 -mtune=G5 -mcpu=G5' 'FFLAGS=-g -O3 -mtune=G5 -mcpu=G5' \
'LDFLAGS=-arch ppc64 -m64 -L/usr/local/lib' 'CXXFLAGS=-g -O3 -mtune=G5 -mcpu=G5' \
'FCFLAGS=-g -O3 -mtune=G5 -mcpu=G5' --disable-R-framework --enable-R-shlib \
'--with-blas=-framework vecLib' --with-lapack 1> configure.R.ppc64.out.20071107.Run01.txt 2>&1

sudo make 1> make.R.ppc64.out.20071107.Run01.txt 2>&1

sudo make check 1> make.check.R.ppc64.out.20071107.Run01.txt 2>&1

Steve McKinney



R-devel_at_r-project.org mailing list
https://stat.ethz.ch/mailman/listinfo/r-devel Received on Thu 08 Nov 2007 - 01:04:17 GMT

Archive maintained by Robert King, hosted by the discipline of statistics at the University of Newcastle, Australia.
Archive generated by hypermail 2.2.0, at Thu 08 Nov 2007 - 09:30:15 GMT.

Mailing list information is available at https://stat.ethz.ch/mailman/listinfo/r-devel. Please read the posting guide before posting to the list.