Sorry for this double post, I am now correctly subscribed to the list! Hello,
I'm having an issue building a package (named bigExplore) in RStudio which uses both Rcpp and the MatrixAccessor from bigmemory. All of my functions seem to work fine when I was interactively developing them via sourceCpp. The head of a sample .cpp file is: // [[Rcpp::depends(bigmemory)]] #include <Rcpp.h> #include <bigmemory/MatrixAccessor.hpp> // [[Rcpp::export]] void cbindWriter(Rcpp::XPtr<BigMatrix> pA, Rcpp::XPtr<BigMatrix> pB, Rcpp::XPtr<BigMatrix> pC) ... My DESCRIPTION file contains: Depends: bigmemory(>= 4.2.11), Rcpp(>= 0.10.3), RcppArmadillo(>= 0.3.800.1) LinkingTo: bigmemory, Rcpp, RcppArmadillo NAMESPACE: useDynLib(bigExplore) exportPattern("^[[:alpha:]]+") and I made the two Makevars(.win) files for the src directory with: PKG_LIBS = `$(R_HOME)/bin/Rscript -e "Rcpp:::LdFlags()"` PKG_LIBS = $(shell "${R_HOME}/bin${R_ARCH_BIN}/Rscript.exe" -e "Rcpp:::LdFlags()") When I hit Build&Reload in RStudio I get the following message which seems to be complaining about not being able to find the bigmemory header infos ==> Rcpp::compileAttributes() bigmemory >= 4.0 is a major revision since 3.1.2; please see package biganalytics and http://www.bigmemory.org for more information. ==> Rcmd.exe INSTALL --no-multiarch bigExplore * installing to library 'C:/Users/Alex/Documents/R/win-library/2.15'* installing *source* package 'bigExplore' ...** libsg++ -m64 -I"C:/PROGRA~1/R/R-215~1.3/include" -DNDEBUG -I"C:/Users/Alex/Documents/R/win-library/2.15/bigmemory/include" -I"C:/Users/Alex/Documents/R/win-library/2.15/Rcpp/include" -I"C:/Users/Alex/Documents/R/win-library/2.15/RcppArmadillo/include" -I"d:/RCompile/CRANpkg/extralibs64/local/include" -O2 -Wall -mtune=core2 -c RcppExports.cpp -o RcppExports.oRcppExports.cpp:10:29: error: 'BigMatrix' was not declared in this scopeRcppExports.cpp:10:38: error: template argument 1 is invalidRcppExports.cpp:10:38: error: template argument 2 is invalidRcppExports.cpp:10:55: error: 'BigMatrix' was not declared in this scope and so on... The RcppExports.cpp that is generated starts out like: // This file was generated by Rcpp::compileAttributes // Generator token: 10BE3573-1514-4C36-9D1C-5A225CD40393 #include <RcppArmadillo.h> #include <Rcpp.h> using namespace Rcpp; // cbindWriter void cbindWriter(Rcpp::XPtr<BigMatrix> pA, Rcpp::XPtr<BigMatrix> pB, Rcpp::XPtr<BigMatrix> pC); ... which doesn't include any of the bigmemory header information. I did see a recent similar question that was archived on Google http://www.mail-archive.com/rcpp-devel@lists.r-forge.r-project.org/msg05232.html but it appears that a solution was found by adding bigmemory into the depends part of the DESCRIPTION file. (which I have already done) Thanks in advance for your patience and taking the time to look over my problem. Alex Ustian
_______________________________________________ Rcpp-devel mailing list Rcpp-devel@lists.r-forge.r-project.org https://lists.r-forge.r-project.org/cgi-bin/mailman/listinfo/rcpp-devel