On 13 August 2012 at 00:19, Stephen J. Barr wrote: | Greetings, | | Over the weekend I had wanted to compile an application using RInside and | RCppEigen using icpc. I found the following two pieces of information helpful.
Thanks for summarizing here. | 1. The order of the includes in important. In particular | | #include "mpi.h" | #include <RInside.h> | #include <Rcpp.h> | #include <RcppEigen.h> .... which is exactly what the existing example does: #include <mpi.h> // mpi header file #include <RInside.h> // for the embedded R via RInside Note that the include for Rcpp.h is redundant, RInside gets you that. | mpi.h must be first. If mpi.h is after RInside.h, you get the following sort of | errors: | | ------------------------------- | /usr/local/include/openmpi/ompi/mpi/cxx/datatype.h(142): error: expected a type | specifier | virtual void Free(); | ^ | | /usr/local/include/openmpi/ompi/mpi/cxx/datatype.h(142): error: expected a ")" | virtual void Free(); | ^ | | /usr/local/include/openmpi/ompi/mpi/cxx/datatype.h(142): error: expected an | identifier | virtual void Free(); | ^ | -------------------------------- | | 2. The compile string that I used was | | icpc -I/usr/local/include -pthread -I/usr/share/R/include -I/usr/lib/R/ | site-library/Rcpp/include -I/usr/local/lib/R/site-library/RInside/include -O3 | -pipe -g -Wall sjb_simple_smle_with_Rinside.cpp -pthread -L/usr/local/lib | -lmpi_cxx -lmpi -ldl -lm -Wl,--export-dynamic -lrt -lnsl -lutil -L/usr/lib/R/ | lib -lR -lblas -llapack -L/usr/lib/R/site-library/Rcpp/lib -lRcpp -Wl,-rpath,/ | usr/lib/R/site-library/Rcpp/lib -L/usr/local/lib/R/site-library/RInside/lib | -lRInside -Wl,-rpath,/usr/local/lib/R/site-library/RInside/lib -o | sjb_simple_smle_with_Rinside -I/usr/local/lib/R/site-library/RcppEigen/include Is there a reason you avoid Makefiles? As an aside, RInside 0.2.7 is now on CRAN, and I added new examples directories for using it with RcppArmadillo and RcppEigen, respectively. Dirk | This was based on the compile string generated by the make file for the mpi | examples that come with RInside. This took me a while to figure out, so I hope | it is useful for someone else. | | Best regards and have a good week! | Stephen | | ---------------------------------------------------------------------- | _______________________________________________ | Rcpp-devel mailing list | [email protected] | https://lists.r-forge.r-project.org/cgi-bin/mailman/listinfo/rcpp-devel -- Dirk Eddelbuettel | [email protected] | http://dirk.eddelbuettel.com _______________________________________________ Rcpp-devel mailing list [email protected] https://lists.r-forge.r-project.org/cgi-bin/mailman/listinfo/rcpp-devel
