<div dir="ltr"><div><div><div>Hello again,<br><br></div><div>Thank you for looking over my issue and sorry for not giving reproducible code.  I guess assumed that I was doing something obviously wrong but just didn't see it.<br>
<br></div>I did add an entry for bigmemory (and Rcpp) in the DESCRIPTION file for both the Depends and LinkingTo fields.<br><br></div>Here is an R function and a cpp function that I'm running into the same problems with when I try to build the package in RStudio with "build&reload".  Please let me know if there is a better format for me to put it in.<br>
<br>loopWriterR <- function()  {<br>  require(bigmemory)<br>  <br>  A <- matrix(0, 6, 1)<br>  bigA <- as.big.matrix(A)<br>  print(head(bigA))<br>  <br>  loopWriterCpp(bigA@address)<br>  <br>  head(bigA)<br>}<br><br>
// [[Rcpp::depends(bigmemory)]]<br>#include <Rcpp.h><br>#include <bigmemory/MatrixAccessor.hpp><br><br>// [[Rcpp::export]]<br>void loopWriterCpp(Rcpp::XPtr<BigMatrix> pA)  {<br>  MatrixAccessor<double> A(*pA);<br>
  <br>  for(int i = 0; i < 6; i++)  {<br>    A[0][i] = i;<br>  }<br>}<br><br>Here is the output from the build&reload attempt<br><span class="" style="border-collapse:separate;color:rgb(0,0,0);font-family:'Lucida Console';font-size:12px;font-style:normal;font-variant:normal;font-weight:normal;letter-spacing:normal;line-height:normal;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;background-color:rgb(225,226,229)"><pre tabindex="0" class="" style="color:black;font:inherit!important;white-space:pre-wrap!important;outline-style:none;outline-width:initial;outline-color:initial;border-style:none;border-width:initial;border-color:initial;margin:0px;width:278px">
<span class="" style="color:blue">==> Rcpp::compileAttributes()

</span><span class="" style="outline-style:none;outline-width:initial;outline-color:initial;border-style:none;border-width:initial;border-color:initial;white-space:pre-wrap!important;margin:0px"></span><span class="" style="outline-style:none;outline-width:initial;outline-color:initial;border-style:none;border-width:initial;border-color:initial;white-space:pre-wrap!important;margin:0px;color:rgb(197,6,11)">
bigmemory >= 4.0 is a major revision since 3.1.2; please see package
biganalytics and <a href="http://www.bigmemory.org">http://www.bigmemory.org</a> for more information.

</span><span class="" style="outline-style:none;outline-width:initial;outline-color:initial;border-style:none;border-width:initial;border-color:initial;white-space:pre-wrap!important;margin:0px">
</span><span class="" style="color:blue">==> Rcmd.exe INSTALL --no-multiarch RcppbigmemTest

</span><span class="" style="outline-style:none;outline-width:initial;outline-color:initial;border-style:none;border-width:initial;border-color:initial;white-space:pre-wrap!important;margin:0px">* installing to library 'C:/Users/Alex/Documents/R/win-library/2.15'
</span><span class="" style="outline-style:none;outline-width:initial;outline-color:initial;border-style:none;border-width:initial;border-color:initial;white-space:pre-wrap!important;margin:0px"></span><span class="" style="outline-style:none;outline-width:initial;outline-color:initial;border-style:none;border-width:initial;border-color:initial;white-space:pre-wrap!important;margin:0px">g++ -m64 -I"C:/PROGRA~1/R/R-215~1.3/include" -DNDEBUG -I../inst/include   -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"d:/RCompile/CRANpkg/extralibs64/local/include"     -O2 -Wall  -mtune=core2 -c RcppExports.cpp -o RcppExports.o
</span><span class="" style="outline-style:none;outline-width:initial;outline-color:initial;border-style:none;border-width:initial;border-color:initial;white-space:pre-wrap!important;margin:0px"></span><span class="" style="outline-style:none;outline-width:initial;outline-color:initial;border-style:none;border-width:initial;border-color:initial;white-space:pre-wrap!important;margin:0px">* installing *source* package 'RcppbigmemTest' ...
</span><span class="" style="outline-style:none;outline-width:initial;outline-color:initial;border-style:none;border-width:initial;border-color:initial;white-space:pre-wrap!important;margin:0px">** libs
</span><span class="" style="outline-style:none;outline-width:initial;outline-color:initial;border-style:none;border-width:initial;border-color:initial;white-space:pre-wrap!important;margin:0px"></span><span class="" style="outline-style:none;outline-width:initial;outline-color:initial;border-style:none;border-width:initial;border-color:initial;white-space:pre-wrap!important;margin:0px">RcppExports.cpp:9:31: error: 'BigMatrix' was not declared in this scope
</span><span class="" style="outline-style:none;outline-width:initial;outline-color:initial;border-style:none;border-width:initial;border-color:initial;white-space:pre-wrap!important;margin:0px">RcppExports.cpp:9:40: error: template argument 1 is invalid
</span><span class="" style="outline-style:none;outline-width:initial;outline-color:initial;border-style:none;border-width:initial;border-color:initial;white-space:pre-wrap!important;margin:0px">RcppExports.cpp:9:40: error: template argument 2 is invalid
</span><span class="" style="outline-style:none;outline-width:initial;outline-color:initial;border-style:none;border-width:initial;border-color:initial;white-space:pre-wrap!important;margin:0px">RcppExports.cpp: In function 'SEXPREC* RcppbigmemTest_loopWriterCpp(SEXP)':
</span><span class="" style="outline-style:none;outline-width:initial;outline-color:initial;border-style:none;border-width:initial;border-color:initial;white-space:pre-wrap!important;margin:0px">RcppExports.cpp:13:16: error: 'BigMatrix' was not declared in this scope
</span><span class="" style="outline-style:none;outline-width:initial;outline-color:initial;border-style:none;border-width:initial;border-color:initial;white-space:pre-wrap!important;margin:0px">RcppExports.cpp:13:25: error: template argument 1 is invalid
</span><span class="" style="outline-style:none;outline-width:initial;outline-color:initial;border-style:none;border-width:initial;border-color:initial;white-space:pre-wrap!important;margin:0px">RcppExports.cpp:13:25: error: template argument 2 is invalid
</span><span class="" style="outline-style:none;outline-width:initial;outline-color:initial;border-style:none;border-width:initial;border-color:initial;white-space:pre-wrap!important;margin:0px">RcppExports.cpp:13:30: error: invalid type in declaration before '=' token
</span><span class="" style="outline-style:none;outline-width:initial;outline-color:initial;border-style:none;border-width:initial;border-color:initial;white-space:pre-wrap!important;margin:0px">RcppExports.cpp:13:61: error: type/value mismatch at argument 1 in template parameter list for 'template<class T, void (* Finalizer)(T*)> class Rcpp::XPtr'
</span><span class="" style="outline-style:none;outline-width:initial;outline-color:initial;border-style:none;border-width:initial;border-color:initial;white-space:pre-wrap!important;margin:0px">RcppExports.cpp:13:61: error:   expected a type, got 'BigMatrix'
</span><span class="" style="outline-style:none;outline-width:initial;outline-color:initial;border-style:none;border-width:initial;border-color:initial;white-space:pre-wrap!important;margin:0px">RcppExports.cpp:13:61: error: template argument 2 is invalid
</span><span class="" style="outline-style:none;outline-width:initial;outline-color:initial;border-style:none;border-width:initial;border-color:initial;white-space:pre-wrap!important;margin:0px">RcppExports.cpp:13:71: error: no matching function for call to 'as(SEXPREC*&)'
</span><span class="" style="outline-style:none;outline-width:initial;outline-color:initial;border-style:none;border-width:initial;border-color:initial;white-space:pre-wrap!important;margin:0px">RcppExports.cpp:13:71: note: candidate is:
</span><span class="" style="outline-style:none;outline-width:initial;outline-color:initial;border-style:none;border-width:initial;border-color:initial;white-space:pre-wrap!important;margin:0px">C:/Users/Alex/Documents/R/win-library/2.15/Rcpp/include/Rcpp/as.h:125:29: note: template<class T> T Rcpp::as(SEXP)
</span><span class="" style="outline-style:none;outline-width:initial;outline-color:initial;border-style:none;border-width:initial;border-color:initial;white-space:pre-wrap!important;margin:0px"></span><span class="" style="outline-style:none;outline-width:initial;outline-color:initial;border-style:none;border-width:initial;border-color:initial;white-space:pre-wrap!important;margin:0px">make: *** [RcppExports.o] Error 1
</span><span class="" style="outline-style:none;outline-width:initial;outline-color:initial;border-style:none;border-width:initial;border-color:initial;white-space:pre-wrap!important;margin:0px;color:rgb(197,6,11)">ERROR: compilation failed for package 'RcppbigmemTest'
</span><span class="" style="outline-style:none;outline-width:initial;outline-color:initial;border-style:none;border-width:initial;border-color:initial;white-space:pre-wrap!important;margin:0px">* removing 'C:/Users/Alex/Documents/R/win-library/2.15/RcppbigmemTest'
</span><span class="" style="outline-style:none;outline-width:initial;outline-color:initial;border-style:none;border-width:initial;border-color:initial;white-space:pre-wrap!important;margin:0px"></span><span class="" style="outline-style:none;outline-width:initial;outline-color:initial;border-style:none;border-width:initial;border-color:initial;white-space:pre-wrap!important;margin:0px;color:rgb(197,6,11)">
Exited with status 1.</span></pre></span><br>// This file was generated by Rcpp::compileAttributes<br>// Generator token: 10BE3573-1514-4C36-9D1C-5A225CD40393<br><br>#include <Rcpp.h><br><br>using namespace Rcpp;<br>
<br>// loopWriterCpp<br>void loopWriterCpp(Rcpp::XPtr<BigMatrix> pA);<br>RcppExport SEXP RcppbigmemTest_loopWriterCpp(SEXP pASEXP) {<br>BEGIN_RCPP<br>    Rcpp::RNGScope __rngScope;<br>    Rcpp::XPtr<BigMatrix> pA = Rcpp::as<Rcpp::XPtr<BigMatrix> >(pASEXP);<br>
    loopWriterCpp(pA);<br>    return R_NilValue;<br>END_RCPP<br>}<br><br><br>It seems to me that the automatically generated RcppExports.cpp file needs to include the bigmemory headers, but it is not.  <br></div><div><div class="gmail_extra">
<br></div><div class="gmail_extra">I also tried putting the bigmemory headers into the package's inst/include directory and added a flag (PKG_CPPFLAGS += -I../inst/include) for it in the Makevars files, but this didn't seem to have any effect.<br>
<br></div><div class="gmail_extra">Thanks again for your time,<br><br></div><div class="gmail_extra">Alex<br></div><div class="gmail_extra"><br><div class="gmail_quote"><br></div><br></div></div></div>