[R-SIG-Mac] Building R 4.0.2 from source via clang/xcode for MKL on macOS

roy ro|||n|or@|| @end|ng |rom gm@||@com
Tue Sep 29 09:52:41 CEST 2020


Hi Simon,
Thanks for the info.  I was totally unaware of ABI, vecLib, etc and that
Apple has blas, lapack, etc.  But after reading up on this and re-reading
your email, I'm beginning to understand more about this.

So, I would like to first checkout vecLib.  From what you say, would I have
to do something like the following?

./configure --enable-BLAS-shlib --with-blas="-lBLAS"  ...

Is this also possible with LAPACK?

tx again.
cheers, roy


On Mon, Sep 28, 2020 at 3:01 PM Simon Urbanek <simon.urbanek using r-project.org>
wrote:

> Rollin,
>
> it has been several years since I last tested MKL, so take it with a grain
> of salt, but in general you don't necessarily have to build R with MKL in
> order to use it - you only need to use --enable-BLAS-shlib and link to any
> ABI-compatible BLAS which can be vecLib as well. Then you can change the
> link from vecLib to MKL in the BLAS stub. Note that we only need the C ABI,
> there are wrappers vecLibg95f.* which re-map the F entry points to C entry
> points as to avoid Fortran ABI issues thus you don't care about the
> Fortran. However, historically, MKL has not been much more performant than
> vecLib so it's unclear if it is worth the hassle. As with any accelerated
> BLAS, note that this may have effects on results in R.
>
> Cheers,
> Simon
>
>
>
> > On 28/09/2020, at 7:07 PM, rollin <rollinforall using gmail.com> wrote:
> >
> > I wanted to build R from source on macos (10.15.5) so I could include
> > Intel's MKL.  So I first looked at building R from source without MKL.
> >
> > From the installation doc, I modified config.site to have the following:
> >
> > CC=clang
> > OBJC=$CC
> > FC=/usr/local/bin/gfortran
> > CXX=clang++
> >
> >
> > I then ran configuration via the command:
> >
> > ./configure -C --enable-R-shlib --enable-memory-profiling
> > --x-includes=/opt/X11/include --x-libraries=/opt/X11/lib
> >
> PKG_CONFIG_PATH=/opt/X11/lib/pkgconfig:/usr/local/lib/pkgconfig:/usr/lib/pkgconfig
> >
> >
> > And received the following information and error:
> >
> > checking if bzip2 version >= 1.0.6... no
> > checking whether bzip2 support suffices... configure: error: bzip2
> library
> > and headers are required
> >
> >
> > By looking at the log, I saw a compiler error due to an implicit
> function.
> > I then made the following change in config.site:
> >
> > CFLAGS='-Wno-implicit-function-declaration -g -O2''
> >
> >
> > And configure now ran without errors.
> >
> > However, when I looked at configuring to use MKL, I discovered that MKL
> on
> > macos does not support gnu fortran so, unless I purchase Intel's Fortran
> > compiler, it looks like I'm sol.
> >
> > Has anyone built R with MKL on macos (10.15)?  In any event, I wanted to
> at
> > least note the issue and work around I encountered when building R on
> > macos with clang/xcode.
> >
> >       [[alternative HTML version deleted]]
> >
> > _______________________________________________
> > R-SIG-Mac mailing list
> > R-SIG-Mac using r-project.org
> > https://stat.ethz.ch/mailman/listinfo/r-sig-mac
>
>

	[[alternative HTML version deleted]]



More information about the R-SIG-Mac mailing list