In fact I mightily misspoke (apologies). The Rcpp list is of course not meant to be exported out of the Rcpp code but to be used inside another Rcpp function.
But the code fails with a similar message: Error in dyn.load("/var/folders/12/bqytpkx93w97r3s3_h9q9k_00000gn/T//Rtmpm2tVkx/sourcecpp_f9e77d6b9433/sourceCpp_221.so") : unable to load shared object '/var/folders/12/bqytpkx93w97r3s3_h9q9k_00000gn/T//Rtmpm2tVkx/sourcecpp_f9e77d6b9433/sourceCpp_221.so': dlopen(/var/folders/12/bqytpkx93w97r3s3_h9q9k_00000gn/T//Rtmpm2tVkx/sourcecpp_f9e77d6b9433/sourceCpp_221.so, 6): Symbol not found: __ZN4Rcpp4wrapINSt3__124uniform_int_distributionIiEEEEP7SEXPRECRKT_ Referenced from: /var/folders/12/bqytpkx93w97r3s3_h9q9k_00000gn/T//Rtmpm2tVkx/sourcecpp_f9e77d6b9433/sourceCpp_221.so Expected in: flat namespace in /var/folders/12/bqytpkx93w97r3s3_h9q9k_00000gn/T//Rtmpm2tVkx/sourcecpp_f9e77d6b9433/sourceCpp_221.so -----Original Message----- From: aakremena <aakrem...@aol.com> To: rcpp-devel <rcpp-devel@lists.r-forge.r-project.org> Sent: Tue, Apr 26, 2016 1:45 pm Subject: List of uniform_int_distribution objects Hi everybody, 1. I am trying to create an Rcpp list, each of whose elements contain an uniform_int_distribution object. 2. My understanding is that since an uniform_int_distribution object is a non-SEXP one, I need to create a specialization of wrap() first. 3. To this end, I am using the following (sample) piece of code: #include <RcppCommon.h> #include <random> namespace Rcpp { template <> SEXP wrap(const std::uniform_int_distribution<int> &d); } #include <Rcpp.h> using namespace Rcpp; // [[Rcpp::export]] Rcpp::List List_of_Distributions() { Rcpp::List DISTR(2); std::uniform_int_distribution<int> dist_1(0, 5); std::uniform_int_distribution<int> dist_2(0, 6); DISTR[0] = Rcpp::wrap(dist_1); DISTR[1] = Rcpp::wrap(dist_2); return DISTR; } /*** R List_of_Distributions() */ 4. The compilation fails with a message Error in dyn.load("/var/folders/12/bqytpkx93w97r3s3_h9q9k_00000gn/T//Rtmpm2tVkx/sourcecpp_f9e75ec42b87/sourceCpp_220.so") : unable to load shared object '/var/folders/12/bqytpkx93w97r3s3_h9q9k_00000gn/T//Rtmpm2tVkx/sourcecpp_f9e75ec42b87/sourceCpp_220.so': dlopen(/var/folders/12/bqytpkx93w97r3s3_h9q9k_00000gn/T//Rtmpm2tVkx/sourcecpp_f9e75ec42b87/sourceCpp_220.so, 6): Symbol not found: __ZN4Rcpp4wrapINSt3__124uniform_int_distributionIiEEEEP7SEXPRECRKT_ Referenced from: /var/folders/12/bqytpkx93w97r3s3_h9q9k_00000gn/T//Rtmpm2tVkx/sourcecpp_f9e75ec42b87/sourceCpp_220.so Expected in: flat namespace in /var/folders/12/bqytpkx93w97r3s3_h9q9k_00000gn/T//Rtmpm2tVkx/sourcecpp_f9e75ec42b87/sourceCpp_220.so 5. I am working on OS X Mavericks and use clang-omp compiler Can somebody possibly direct me to what I may be doing wrong here. Apologies if the question seems too basic to you. Thank you in advance. Anguel
_______________________________________________ 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