On 27 August 2012 at 22:36, Peng Yu wrote: | I have the following two functions which wrap a C++ function differently. | | rcpp_hello_world=local({ | sym=getNativeSymbolInfo('rcpp_hello_world', PACKAGE='mypkg') | function() .Call(sym, PACKAGE='mypkg') | }) | | rcpp_hello_world1=function(){ | .Call('rcpp_hello_world', PACKAGE='mypkg') | } | | However, the first one results in some error, when I try to install | the R package. I guess the problem is that when the package is being | installed, "mypkg" is not available yet. The solution might be to put | some code in .onLoad or some code that is executed when the package is | loaded (not at installation time). However, I don't find an example. | Does anybody have any experience on how to have the first form of | .Call in a package? Thanks! | | Loading required package: Rcpp | Error in FUN("rcpp_hello_world"[[1L]], ...) : | no such symbol rcpp_hello_world in package mypkg | Calls: roxygenize ... eval -> eval -> getNativeSymbolInfo -> lapply -> FUN | Execution halted
You posted two methods. One of which works and is supported. Why not use it? Dirk -- Dirk Eddelbuettel | e...@debian.org | http://dirk.eddelbuettel.com _______________________________________________ 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