[Rcpp-devel] LLVM

Jan de Leeuw deleeuw at stat.ucla.edu
Sat Jul 23 23:41:57 CEST 2011


 Sure. If I switch to g++-4.7 (from FSF svn) it disappears. Also, I think, if I switch to Apple's g++-4.2.  
Only happens with g++-llvm and clang++. Of course I think LLVM still says C++ support is incomplete.

--  
Jan de Leeuw
Sent with Sparrow (http://www.sparrowmailapp.com/?sig)

On Saturday, July 23, 2011 at 14:32 , Dirk Eddelbuettel wrote:

>  
> CCing Conrad even though I know he reads the list (and I fear he may have set
> off for vacation in NZ). Also CCing Simon as usual when begging for OS X help :)
>  
> On 23 July 2011 at 13:56, Jan de Leeuw wrote:
> | I compile a 64bit CLI version of the current R-devel from svn, with about 1000 add-on packages, in Lion, using the clang and clang++ compilers
> | from the LLVM project (and gfortran 4.7). This generally works well, the compiles are really fast, but for RcppArmadillo I get
> |  
> |  
> |  
> | ** testing if installed package can be loaded
> | Error in dyn.load(file, DLLpath = DLLpath, ...) :  
> | unable to load shared object '/usr/local/R/lib/R/library/RcppArmadillo/libs/RcppArmadillo.so':
> | dlopen(/usr/local/R/lib/R/library/RcppArmadillo/libs/RcppArmadillo.so, 6): Symbol not found: __ZN4arma12arma_version5majorE
>  
> That is the very same issue we had with OS X development compilers before.
> We even moved those arma::arma_version symbols around:
>  
> 2011-04-25 Dirk Eddelbuettel <edd at debian.org (mailto:edd at debian.org)>
>  
>  * src/RcppArmadillo.cpp: Rewritten armadillo_version as to no longer
>  require an instance of arma::arma_version, with Thanks! to Conrad
>  
> but as I recall that did not resolve the issue. My memory is a little fuzzy,
> but didn't this go away once you moved compilers?
>  
> The code bit it trivial:
>  
>  
> extern "C" SEXP armadillo_version(SEXP single_){
>  
>  bool single = as<bool>( single_) ;
>  
>  if( single ){
>  return wrap( 10000*arma::arma_version::major +
>  100*arma::arma_version::minor +  
>  arma::arma_version::patch ) ;
>  }
>  
>  IntegerVector version =  
>  IntegerVector::create(_["major"] = arma::arma_version::major,
>  _["minor"] = arma::arma_version::minor,
>  _["patch"] = arma::arma_version::patch);
>  
>  return version ;
>  
> }
>  
>  
> and there is no reason I can see why this doesn't link.
>  
> Dirk
>  
>  
>  
> | Referenced from: /usr/local/R/lib/R/library/RcppArmadillo/libs/RcppArmadillo.so
> | Expected in: flat namespace
> | in /usr/local/R/lib/R/library/RcppArmadillo/libs/RcppArmadillo.so
> | Error: loading failed
> | Execution halted
> | ERROR: loading failed
> | * removing ‘/usr/local/R/lib/R/library/RcppArmadillo’
> | * restoring previous ‘/usr/local/R/lib/R/library/RcppArmadillo’
> |  
> |  
> | --  
> | Jan de Leeuw
> | Sent with Sparrow (http://www.sparrowmailapp.com/?sig)
> |  
> | _______________________________________________
> | Rcpp-devel mailing list
> | Rcpp-devel at lists.r-forge.r-project.org (mailto:Rcpp-devel at lists.r-forge.r-project.org)
> | https://lists.r-forge.r-project.org/cgi-bin/mailman/listinfo/rcpp-devel
>  
> --  
> Gauss once played himself in a zero-sum game and won $50.
>  -- #11 at http://www.gaussfacts.com




More information about the Rcpp-devel mailing list