乱数ジェネレーターにアクセスするには、コンパイルして pomp パッケージにリンクする必要がある C++/Rcpp 関数があります。ヘッダー ファイルをインクルードすることはできますが、コンパイルされたコードにリンクするにはどうすればよいですか?
CppColonized<-cxxfunction(
sig=signature(x="numeric", t="numeric", params="numeric", dt="numeric"),
plugin='Rcpp',
includes = sprintf("#include <Rmath.h>\n#include <math.h>\n#include\"%s\"",
base:::system.file("include/pomp.h",package="pomp")),
body=Code,verbose=T)
コードは pomp パッケージの reulermultinom 関数を使用しており、評価するとエラーが発生します
`reulermultinom(int, double, double*, double, double*) への未定義参照
発行されるコマンドは、
g++ -I"C:/PROGRA~1/R/R-211~1.1/include" -I"C:/PROGRA~1/R/R-211~1.1/library/Rcpp/include" -O2 -Wall - c file2f752742.cpp -o file2f752742.o g++ -shared -s -static-libgcc -o file2f752742.dll tmp.def file2f752742.o C:/PROGRA~1/R/R-211~1.1/library/Rcpp/lib/ libRcpp.a -LC:/PROGRA~1/R/R-211~1.1/bin -lR
-lpomp などがあるはずです。