[Rcpp-devel] Fwd: [Rd] Toolchains for x64 Windows

Dominick Samperi djsamperi at gmail.com
Mon Jul 26 16:43:09 CEST 2010

Resent with fixed rcpp-devel address...

---------- Forwarded message ----------
From: Dominick Samperi <djsamperi at gmail.com>
Date: Mon, Jul 26, 2010 at 10:38 AM
Subject: Re: [Rd] Toolchains for x64 Windows
To: Prof Brian Ripley <ripley at stats.ox.ac.uk>
Cc: Rcpp-devel at r-project.org

On Mon, Jul 26, 2010 at 2:58 AM, Prof Brian Ripley <ripley at stats.ox.ac.uk>wrote:

> The most critical change is to no longer have an additional leading
> underscore on symbols, and we will adopt that convention for R 2.12.0.
> R-devel is now set up by default to use it: if you have been building
> R-devel with an older toolchain you will need to start afresh with the new
> one, a snapshot of which is at
> http://www.stats.ox.ac.uk/pub/Rtools/Win64No_toolchain.zip
> The currently recommended tools are (as ever) documented in the R-admin
> manual for the version of R you use.

I missed this posting and had to do some hacking to work-around a related
problem. This posting
seems to suggest that this is an issue for R 2.12+, but I ran into issues
with R 2.11.1.

I think what is happening is the latest version of g++ is not inserting a
leading "_" in
symbol names, yet the build of R x64 that I downloaded included a version of
<R>/share/make/winshlib.mk that assumed that the underscores are present and
need to be stripped.

I guess the lesson here is that the version of R/x64 and Rtools used need to
compatible. I've appended my earlier post on this matter.



After much tinkering I managed to build packages using the 64bit version of
R with the help of hints from
R-admin Manual.

But a hack was required, and this seems to be related to
a comment about underscores at the end of the second
reference above (but this comment is about FUTURE
changes in R starting with 2.12.x, and I'm not sure how
it applies to the current problem using 2.11.1).

If I simply follow the instructions of the first reference I
get lots of "cannot export / symbol not defined" errors because
by default the leading underscore is stripped off during the
shared library build process, specifically, all names in
tmp.def (created in share/winshlib.mk) do not contain a
leading underscore.

If I modify share/winshlib.mk so that the leading underscore
is not stripped everything works fine.

Have I missed some documentation explaining what is
going on here?

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.r-forge.r-project.org/pipermail/rcpp-devel/attachments/20100726/76561d01/attachment.htm>

More information about the Rcpp-devel mailing list