All,

First, macos-rtools isn't an officially sanctioned R project installer. I 
created it in the Summer of 2017 to quickly get students and collaborators 
setup with minimal effort under a configuration that mirrored CRAN. This was 
primarily due to the lack of official installer packages and students not being 
able to modify the PATH variable correctly. 

Having said this, the setup mirrored is given in section C.3.2. of the R 
Installation and Administration manual:
https://cran.r-project.org/doc/manuals/r-release/R-admin.html#Recommended-C_002fC_002b_002b-compilers
 

I believe you are referring to this section.

From working with the toolchain for a while, the short version of why clang is 
"recommended" over gcc is because there are two different implementations of 
the C++ standard library at play: 

- libc++: developed for clang courtesy of Apple and its crusade against GPL
- libstdc++: developed for gcc. 

Both libraries can be dropped in, but sometimes do not produce equivalent 
results.

So, mixing compilers based off of different versions leads to problems. This is 
why the compatibility issue exists between CRAN and Homebrew variants of R. 
e.g. 

CRAN Binary for macOS: clang + libc++
Homebrew variant: gcc + libstdc++

So, for everyday users sake, it's best to not switch out the underlying 
compiler as it mandates R packages are compiled from source instead of getting 
a binary from CRAN.

Best,

JJB

On 2/18/20, 4:36 AM, "R-SIG-Mac on behalf of peter dalgaard" 
<r-sig-mac-boun...@r-project.org on behalf of pda...@gmail.com> wrote:

    Simon has recently brought up (on R-core) the related issue of what to use 
as the target platform for 4.0.0. 
    
    I don't know whether he is ready to take his deliberations to a wider 
audience at this point.
    
    -pd
    
    > On 18 Feb 2020, at 09:14 , Patrick Schratz <patrick.schr...@gmail.com> 
wrote:
    > 
    > Hi,
    > 
    > I am experimenting since some days to find the “best” compiler toolchain 
for R-devel to get R-devel package source installs on the new macOS Github 
Actions runners work in a somewhat stable way.
    > I am also on macOS locally which I use for testing as well.
    > 
    > I am aware of https://github.com/rmacoslib/r-macos-rtools. However, using 
clang7 for all (CC, CXX, etc) leads to some packages failing to build 
(sometimes due to missing OpenMP capabilities, sometimes undefined).
    > 
    > Therefore I decided to try out gcc (v8 and v9). While this solves most of 
the OpenMP issues, I am running into problems for other packages regarding CC 
compilation.
    > 
    > Turns out that using any clang version for CC solves most problems but 
not all.
    > However then I have a mix of gcc and clang which is most likely cause 
other issues.
    > 
    > Currently Jeroen is developing a new gcc8 based toolchain for Windows.
    > 
    > I was reading the macOS CRAN dev pages but could not find any reasoning 
why
    > 
    > • clang7 is suggested
    > • gcc is not used
    > • What future plans are there for the toolchain on macOS
    > 
    > Could someone shine some light on this? Thanks :)
    > 
    > Cheers, Patrick
    > 
    >   [[alternative HTML version deleted]]
    > 
    > _______________________________________________
    > 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
    Office: A 4.23
    Email: pd....@cbs.dk  Priv: pda...@gmail.com
    
    _______________________________________________
    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

Reply via email to