[Rd] Notes on building a gcc toolchain for Rtools (but not multilib)

Avraham Adler avraham.adler at gmail.com
Wed Mar 11 18:32:13 CET 2015


On Wed, Mar 11, 2015 at 1:23 PM, Hsiu-Khuern Tang <tangoh at gmail.com> wrote:
> On Tue, Mar 10, 2015 at 10:47 PM, Avraham Adler <avraham.adler at gmail.com> wrote:
>> On Wed, Mar 11, 2015 at 1:40 AM, Hsiu-Khuern Tang <tangoh at gmail.com> wrote:
>>> On Tue, Mar 10, 2015 at 8:54 PM, Avraham Adler <avraham.adler at gmail.com> wrote:
>>>>
>>>> I successfully rebuilt R-devel_2015-03-09 with the most recent version
>>>> of Rtools tonight, building both ICU_531 and this time libcurl (7.39)
>>>> as well (and OpenBLAS, of course). The internet bug is still there,
>>>> but the rest of make-check all passed with flying colors, as did
>>>> building 'microbenchmark' from source (with all the other needed
>>>> packages, including Rcpp and Hsiu-Kheurn's change to NM was *not*
>>>> used).
>>>> ...
>>>
>>> The NM_FILTER change seems to be needed only when compiling C++ code
>>> with -std=c++11 or -std=gnu++11.
>>>
>>> Even though the current CRAN policy doesn't allow the C++11 standard,
>>> it would still be useful to document this, perhaps in the Writing R
>>> Extensions manual.
>>>
>>> - Hsiu-Khuern
>>
>> Hello, Hsiu-Khuern.
>>
>> All the times I have built, I've passed -std-gnu++11. Specifically, I
>> pass: -march=native -O3 -mfpmath=sse -std=gnu++11 -msse2avx
>> -mavx256-split-unaligned-load -mavx256-split-unaligned-store
>> -mvzeroupper --param l1-cache-line-size=64 --param l1-cache-size=64
>> --param l2-cache-size=256.
>> ...
>
> Interesting.  I tested the use of -O0, ..., -O3 together with
> -std=gnu++11.  With -O0 (which I suppose is the default if not
> specified), I get the following error when R CMD INSTALL is trying to
> create Rcpp.dll:
>
> collect2.exe: error: ld returned 5 exit status
>
> With -O1, -O2, or -O3, there is no error.
>
> - Hsiu-Khuern
>

The default is O2, I believe, as the default EOPTS in
src/gnuwin32/Mkrules.dist are -O2 -mtune=core2.

Avi



More information about the R-devel mailing list