Thanks Dirk for the reaction, For my understanding: I have to compile RQuantLib with the right Makevars.win?
In my search on the www I found your slides for the QuantLib user meeting 2014. Running the RQuantLib example results in: Error in LdFlags(FALSE) : Cannot supply LdFlags as none set. While the RcppArmadillo example gives no problem. Thanks in advance, André > sessionInfo() R version 3.1.2 (2014-10-31) Platform: x86_64-w64-mingw32/x64 (64-bit) locale: [1] LC_COLLATE=Dutch_Netherlands.1252 LC_CTYPE=Dutch_Netherlands.1252 [3] LC_MONETARY=Dutch_Netherlands.1252 LC_NUMERIC=C [5] LC_TIME=Dutch_Netherlands.1252 attached base packages: [1] stats graphics grDevices utils datasets methods base other attached packages: [1] RQuantLib_0.4.0 loaded via a namespace (and not attached): [1] Rcpp_0.11.2 RcppArmadillo_0.4.400.0 tools_3.1.2 2015-01-19 19:58 GMT+01:00 Dirk Eddelbuettel <[email protected]>: > > On 19 January 2015 at 19:36, André de Boer wrote: > | Hi, > | > | I try to run this code in RStudio > | > | // Original Klaus Spanderen R/Finance 2013: Applied Finance with R > | library(Rcpp) > | library(inline) > | > | registerPlugin("QuantLib", > | Rcpp:::Rcpp.plugin.maker(include.before='#include <ql/quantlib.hpp>', > | libs="-lQuantLib")) > | > | blackFormulaCall <- cxxfunction( > | signature(strike="numeric", fwd="numeric", > | stdDev="numeric", discount="numeric"), > | body=' > | using namespace QuantLib; > | return wrap(blackFormula(Option::Call, > | as<Real>(strike), as<Real>(fwd), > | as<Real>(stdDev), as<Real>(discount)));', > | plugin="QuantLib") > | > | But I get this error: > | > | Error in compileCode(f, code, language = language, verbose = verbose) : > | Compilation ERROR, function(s)/method(s) not created! Warning message: > | running command 'make -f "C:/PROGRA~1/R/R-31~1.2/etc/x64/Makeconf" -f > | "C:/PROGRA~1/R/R-31~1.2/share/make/winshlib.mk" > | SHLIB_LDFLAGS='$(SHLIB_CXXLDFLAGS)' SHLIB_LD='$(SHLIB_CXXLD)' > | SHLIB="file29c067ef2ad7.dll" WIN=64 TCLBIN=64 > | OBJECTS="file29c067ef2ad7.o"' had status 127 > | In addition: Warning message: > | running command 'C:/PROGRA~1/R/R-31~1.2/bin/x64/R CMD SHLIB > | file29c067ef2ad7.cpp 2> file29c067ef2ad7.cpp.err.txt' had status 1 > | > | I have a working version of quantlib-1.4, but how do I tell the > | compiler where to find it? > > Windows is, as usual, harder. On the other OSs, we can rely on > quantlib-config. > > In RQuantLib we have this in Makevars.win: > > ## The environment variable QUANTLIB_ROOT has to point to an existing build > of QuantLib > ## With R 2.12.0 and later, we also support 32 and 64 bit builds and need > to differentiate > PKG_CXXFLAGS=-I$(QUANTLIB_ROOT) -I../inst/include -I. -I$(BOOSTLIB) > $(SHLIB_OPENMP_CFLAGS) -fpermissive > PKG_LIBS=-L$(QUANTLIB_ROOT)/lib${R_ARCH} -lQuantLib $(SHLIB_OPENMP_CFLAGS) > > I think you'd need to make up a Windows variant of the plugin. Note that > there is also an rquantlib-devel mailing list... > > Dirk > > -- > http://dirk.eddelbuettel.com | @eddelbuettel | [email protected] _______________________________________________ Rcpp-devel mailing list [email protected] https://lists.r-forge.r-project.org/cgi-bin/mailman/listinfo/rcpp-devel
