[Rcpp-devel] Report on building Bioconductor with the new toolchain

Dan Tenenbaum dtenenba at fredhutch.org
Tue Mar 17 16:29:46 CET 2015



----- Original Message -----
> From: "Martyn Plummer" <plummerm at iarc.fr>
> To: dtenenba at fredhutch.org
> Cc: rcpp-devel at lists.r-forge.r-project.org
> Sent: Tuesday, March 17, 2015 7:37:14 AM
> Subject: Re: [Rcpp-devel] Report on building Bioconductor with the new toolchain
> 
> On Mon, 2015-03-16 at 12:08 -0700, Dan Tenenbaum wrote:
> > Hi,
> > 
> > Pardon me if this is off-topic but it looks from recent discussion
> > like several people here are working on helping Duncan with the new
> > toolchain and I thought some reports about issues with it might be
> > welcome/helpful. If not, please ignore this email or suggest a more
> > appropriate place for it (since Duncan is traveling, I thought
> > R-devel
> > might be a less appropriate place).
> > 
> > Bioconductor has been running with the new toolchain for a few
> > days.
> > The main issues seem to be:
> > 
> > - If a package links against another C/C++ library, that library
> > needs
> > to be rebuilt from source using the compilers in the new Rtools.
> > This
> > can be fairly painful for some windows libraries. In one case
> > (protobuf) the appropriate version of ranlib was not run against
> > the
> > 64-bit static library; I ended up doing this by hand.
> 
> That sounds like a show stopper to me. We certainly don't want to
> have
> to rebuild third party libraries. 


Jeroen replied to me off-list and said this was being worked on and was likely the result of using different flags from the previous version of rtools. 
However, I note that the third party libraries I'm dealing with were not necessarily built with the old Rtools compilers; in some cases I downloaded pre-built binaries. They were built with mingw though.

> But two things are not clear to me
> 1) Is it just libraries using C++ that are affected or also libraries
> using only C?

So far it seems like just C++ (protocol buffers, openbabel, proteome wizard, ROOT, etc..)

> 2) What happens if you don't rebuild the library?

Usually something like this:

** testing if installed package can be loaded
Error : .onLoad failed in loadNamespace() for 'ChemmineOB', details:
  call: inDL(x, as.logical(local), as.logical(now), ...)
  error: unable to load shared object 'E:/biocbld/bbs-3.1-bioc/R/library/ChemmineOB/libs/i386/ChemmineOB.dll':
  LoadLibrary failure:  Invalid access to memory location.


>  
> > - A package (Rgraphviz) failed because of a line in Makevars.win:
> > gcc.exe: error: unrecognized command line option
> > '-WI,--enable-auto-import'
> > removing the line:
> > PKG_LIBS += -WI,--enable-auto-import
> > fixed the problem
> 
> That one is just a typo. To pass an option (e.g.
> --enable-auto-import)
> to the linker one should use -Wl not -WI. So it is good that the new
> tool chain is picking this up.


Good to know, thanks.
Dan

> 
> Martyn
> 
> > There are several other packages that have problems related to the
> > new
> > toolchain, but I haven't figured out exactly what they are yet. Our
> > build report
> > (http://bioconductor.org/checkResults/devel/bioc-LATEST/)
> > has more information. Here are the specific packages (the report
> > contains a reference to their source in svn; you can check them out
> > with the username readonly and password readonly):
> > 
> > http://bioconductor.org/checkResults/devel/bioc-LATEST/affxparser/moscato2-install.html
> > http://bioconductor.org/checkResults/devel/bioc-LATEST/AffyTiling/moscato2-buildsrc.html
> > http://bioconductor.org/checkResults/devel/bioc-LATEST/DNAcopy/moscato2-install.html
> > http://bioconductor.org/checkResults/devel/bioc-LATEST/GeneSelectMMD/moscato2-buildsrc.html
> > http://bioconductor.org/checkResults/devel/bioc-LATEST/Rdisop/moscato2-install.html
> > 
> > 
> > Let me know if you have any questions about this.
> > 
> > Thanks,
> > Dan
> > 
> > _______________________________________________
> > Rcpp-devel mailing list
> > Rcpp-devel at lists.r-forge.r-project.org
> > https://lists.r-forge.r-project.org/cgi-bin/mailman/listinfo/rcpp-devel
> 
> -----------------------------------------------------------------------
> This message and its attachments are strictly confidential. If you
> are
> not the intended recipient of this message, please immediately notify
> the sender and delete it. Since its integrity cannot be guaranteed,
> its content cannot involve the sender's responsibility. Any misuse,
> any disclosure or publication of its content, either whole or
> partial,
> is prohibited, exception made of formally approved use
> -----------------------------------------------------------------------
> 


More information about the Rcpp-devel mailing list