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