[prev in list] [next in list] [prev in thread] [next in thread] 

List:       r-sig-mac
Subject:    Re: [R-SIG-Mac] building R under Lion
From:       Kasper Daniel Hansen <kasperdanielhansen () gmail ! com>
Date:       2012-08-29 14:52:02
Message-ID: CAC2h7usRm_F7LQPag5OyL2-REa4idOsDhUKzb=hQNjzs4j+eKQ () mail ! gmail ! com
[Download RAW message or body]

For other readers of the thread: apply the patch Simon gave and still
use  --with-blas='-framework vecLib'

Peter: Accelerate.h just includes vecLib.h (and also vImage.h), nothing else.

Simon: after looking at the header files, I agree that it seems
easiest to just define __ACCELERATE__.  It might also be possible to
define __ENVIRONMENT_MAC_OS_X_VERSION_MIN_REQUIRED, but I guess that
is likely to have other consequences.

Kasper


On Wed, Aug 29, 2012 at 9:27 AM, Simon Urbanek
<simon.urbanek@r-project.org> wrote:
> 
> On Aug 29, 2012, at 2:29 AM, peter dalgaard wrote:
> 
> > 
> > On Aug 29, 2012, at 02:51 , Simon Urbanek wrote:
> > 
> > > You were on the right path - it's only about renaming vecLib to Accelerate, so \
> > > you just have to apply the patch below. It is annoying, since -framework vecLib \
> > > still works just fine so you don't even need to change the configure flags. The \
> > > patch will in some modified form make it to R eventually.
> > 
> > Just to clarify: This is due to quite recent XCode changes? In my versions on \
> > Lion and Snow Leopard, Accelerate.h just #includes vecLib.h. 
> 
> It's just yet another Apple nonsense in Mountain Lion - it still just includes \
> vecLib but now vecLib checks whether __ACCELERATE__ is defined and bails out with \
> an error if it's not ... So another work-around is to set CPPFLAGS=-D__ACCELERATE__ \
>  Cheers,
> Simon
> 
> 
> > 
> > > 
> > > Cheers,
> > > Simon
> > > 
> > > 
> > > Index: vecLibg95c.c
> > > ===================================================================
> > > --- vecLibg95c.c     (revision 59442)
> > > +++ vecLibg95c.c     (working copy)
> > > @@ -2,7 +2,7 @@
> > > #include <config.h>
> > > #endif
> > > 
> > > -#include <vecLib/vecLib.h>
> > > +#include <Accelerate/Accelerate.h>
> > > 
> > > void F77_FUNC_(rcblas_cdotu_sub,)(const int *N, const void *X, const int *incX,
> > > const void *Y, const int *incY, void *dotu)
> > > 
> > > 
> > > 
> > > 
> > > 
> > > On Aug 28, 2012, at 5:22 PM, Kasper Daniel Hansen wrote:
> > > 
> > > > I am running Lion, with the newest version of Xcode, and the 5666
> > > > build of gcc+gfortran from Simon's page.  This is on Macbook pro last
> > > > generation, with a quad core i7.  I have installed the latest stable
> > > > release of Xquartz.
> > > > 
> > > > I am building R, not as a framework (--disable-framework), but I am
> > > > using --with-blas='-framework vecLib' which at least used to be much
> > > > better than the built-in BLAS.
> > > > 
> > > > My entire configure call is
> > > > ../${SRCDIR}/configure SHELL='/bin/bash' \
> > > > --prefix=/usr/local/R/R-${R_VERSION} --disable-R-framework\
> > > > CC="/usr/bin/gcc-4.2 -arch x86_64 -std=gnu99" \
> > > > CFLAGS="-g -O2 -std=gnu99 -march=nocona" \
> > > > CXX="/usr/bin/g++-4.2 -arch x86_64" \
> > > > CXXFLAGS="-g -O2 -march=nocona" \
> > > > OBJC="/usr/bin/gcc-4.2 -arch x86_64" \
> > > > F77="/usr/bin/gfortran-4.2 -arch x86_64" \
> > > > FFLAGS="-g -O2 -march=nocona" \
> > > > FC="/usr/bin/gfortran-4.2 -arch x86_64" \
> > > > FCFLAGS="-g -O2 -march=nocona" \
> > > > --enable-memory-profiling\
> > > > --x-includes=/usr/X11/include --x-libraries=/usr/X11/lib\
> > > > --with-system-zlib\
> > > > --with-blas='-framework vecLib' --with-lapack
> > > > 
> > > > When I build R-2.15.1-patched, I get
> > > > 
> > > > making internet.d from \
> > > > ../../../../R-2.15.x-src/src/modules/internet/internet.c In file included \
> > > >                 from
> > > > ../../../../R-2.15.x-src/src/modules/lapack/vecLibg95c.c:5:
> > > > /System/Library/Frameworks/vecLib.framework/Headers/vecLib.h:22:4:
> > > > error: #error "<vecLib/vecLib.h> is deprecated.  Please #include
> > > > <Accelerate/Accelerate.h> and link to Accelerate.framework."
> > > > make[3]: *** [vecLibg95c.d] Error 1
> > > > make[2]: *** [make.lapack] Error 2
> > > > make[2]: *** Waiting for unfinished jobs....
> > > > making nanoftp.d from ../../../../R-2.15.x-src/src/modules/internet/nanoftp.c
> > > > 
> > > > <SNIP>
> > > > 
> > > > /usr/bin/gcc-4.2 -arch x86_64 -std=gnu99 -I. -I../../../src/include
> > > > -I../../../../R-2.15.x-src/src/include -I/usr/local/include
> > > > -DHAVE_CONFIG_H   -fopenmp -fPIC  -g -O2 -std=gnu99 -march=nocona   -c
> > > > ../../../../R-2.15.x-src/src/modules/internet/sockconn.c -o sockconn.o
> > > > /usr/bin/gcc-4.2 -arch x86_64 -std=gnu99 -dynamiclib
> > > > -Wl,-headerpad_max_install_names  -undefined dynamic_lookup
> > > > -single_module -multiply_defined suppress -L/usr/local/lib -o
> > > > internet.so Rhttpd.o Rsock.o internet.o nanoftp.o nanohttp.o sock.o
> > > > sockconn.o   -Wl,-framework -Wl,CoreFoundation
> > > > mkdir /Users/khansen/build/R/R-2.15.x-build/modules
> > > > make[1]: *** [R] Error 1
> > > > make: *** [R] Error 1
> > > > 
> > > > So it seems that it does not like -framework vecLib.  I tried with
> > > > -framework Accelerate, but I get the same error.
> > > > 
> > > > My guess is that there is some new thing I have to do here, but I
> > > > tried reading the admin guide for R-devel and could not see anything
> > > > particular (except I do not need -arch x86_64 anymore).
> > > > 
> > > > Thanks,
> > > > Kasper
> > > > 
> > > > _______________________________________________
> > > > R-SIG-Mac mailing list
> > > > R-SIG-Mac@r-project.org
> > > > https://stat.ethz.ch/mailman/listinfo/r-sig-mac
> > > > 
> > > > 
> > > 
> > > _______________________________________________
> > > R-SIG-Mac mailing list
> > > R-SIG-Mac@r-project.org
> > > https://stat.ethz.ch/mailman/listinfo/r-sig-mac
> > 
> > --
> > Peter Dalgaard, Professor,
> > Center for Statistics, Copenhagen Business School
> > Solbjerg Plads 3, 2000 Frederiksberg, Denmark
> > Phone: (+45)38153501
> > Email: pd.mes@cbs.dk  Priv: PDalgd@gmail.com
> > 
> > 
> > 
> > 
> > 
> > 
> > 
> > 
> > 
> 

_______________________________________________
R-SIG-Mac mailing list
R-SIG-Mac@r-project.org
https://stat.ethz.ch/mailman/listinfo/r-sig-mac


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic