[R-SIG-Mac] Advise on building R on OSX without optimization for debugging

Simon Urbanek @|mon@urb@nek @end|ng |rom R-project@org
Mon Jul 13 12:14:19 CEST 2020



> On Jul 13, 2020, at 7:59 PM, Prof Brian Ripley <ripley using stats.ox.ac.uk> wrote:
> 
> On 08/07/2020 21:38, Simon Urbanek wrote:
>> Dmitriy,
>> due to permissions and the various limitations on passing environment variables across processes it is often easier to simply run R and attach the debugger to it:
>> $ R
>> [...]
>>> Sys.getpid()
>> [1] 89955
>>> 
>> $ sudo lldb
>> Password:
>> (lldb) attach 89955
>> [...]
>> (lldb) c
>> Process 89955 resuming
> 
> On Catalina I can do that for a version of R I compiled, but not for a notarized binary distribution (which also refuses to be run under a debugger).  The lldb error message is maximally uninformative:
> 
> (lldb) attach 16682
> error: attach failed: Error 1
> 
> or
> 
> (lldb) run
> error: process exited with status -1 (Error 1)
> 
> I presume that is intentional on Apple's part and there is no way round it other than weakening security (e.g. disable SIP)?
> 


Correct. It is annoying enough that it made to to the FAQ:

https://cran.r-project.org/bin/macosx/RMacOSX-FAQ.html#I-cannot-attach-debugger-to-R

So the recommended way is to use the non-notarised builds (you can also disable SIP but that is not recommended). And, yes, it would be nice if lldb provided a more useful error...

I suspect that it would be actually sufficient to provide just a exec/R binary that doesn't use hardened run-time, but it couldn't be distributed in the Apple Installer ... unless we create it with the post install script ... something to test I suppose...

Best,
Simon




> My memory was that it did work on High Sierra (I sometimes use it to investigate packages which segfault under your distribution but not with my builds) and I have just re-checked there with the CRAN distribution of 4.0.2.
> 
> Brian Ripley
> 
> -- 
> Brian D. Ripley,                  ripley using stats.ox.ac.uk
> Emeritus Professor of Applied Statistics, University of Oxford
> 
> _______________________________________________
> R-SIG-Mac mailing list
> R-SIG-Mac using r-project.org
> https://stat.ethz.ch/mailman/listinfo/r-sig-mac



More information about the R-SIG-Mac mailing list