Dear List, In the middle of figure out another problem, I used function Module twice, but then I got segfault. Is there any solution for this? For the time being, I really need to call function Module more than once.
Best, Jiqiang P.S. an example code and the dump of output. In addition, my sessionInfo() > sessionInfo() R version 2.15.1 (2012-06-22) Platform: x86_64-pc-linux-gnu (64-bit) locale: [1] LC_CTYPE=en_US.utf8 LC_NUMERIC=C [3] LC_TIME=en_US.utf8 LC_COLLATE=en_US.utf8 [5] LC_MONETARY=en_US.utf8 LC_MESSAGES=en_US.utf8 [7] LC_PAPER=C LC_NAME=C [9] LC_ADDRESS=C LC_TELEPHONE=C [11] LC_MEASUREMENT=en_US.utf8 LC_IDENTIFICATION=C attached base packages: [1] stats graphics grDevices utils datasets methods base other attached packages: [1] inline_0.3.8 Rcpp_0.9.13 loaded via a namespace (and not attached): [1] tools_2.15.1 require("Rcpp") require("inline") inc <- ' class Foo { private: int x_; public: Foo(int x) : x_(x) { } void setx(int x) { x_ = x;} int getx() const { return x_;} }; RCPP_MODULE(foo1) { class_<Foo>("Foo") .constructor<int>() .method("setx", &Foo::setx) .method("getx", &Foo::getx) ; } ' fx <- cxxfunction(signature(), "", include = inc, plugin = "Rcpp", verbose = !TRUE) m <- Module("foo1", getDynLib(fx)) m2 <- Module("foo1", getDynLib(fx)) ====== > m <- Module("foo1", getDynLib(fx)) > m2 <- Module("foo1", getDynLib(fx)) > > f <- new(m$Foo, 1) > f2 <- new(m2$Foo, 1) *** caught segfault *** address 0x90, cause 'memory not mapped' Traceback: 1: .Call(symbol) 2: Module(module, mustStart = TRUE) 3: .getModulePointer(x) 4: m2$Foo 5: .getClassFromCache(Class, where) 6: getClass(Class, where = topenv(parent.frame())) 7: new(m2$Foo, 1) aborting ...
_______________________________________________ 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