私のC++プログラムをコンパイルしようとすると、私はRファイルをリンクしていますが、RcppにはlibRcpp.soファイルがありません。ここlibRcpp.soファイルがない場合は、どのようにRcppをリンクできますか?
はRコードは、(私はC++を残してきた)である:
#include <R.h>
#include <Rcpp.h>
#include <RInside.h>
**** some c++ code*****
RInside R(argc, argv);
string cmd = "tmpf <- tempfile('nums');"
"png(tmpf);"
"counts <- table(a,b,c,d,e);"
"barplot(counts, main='My Plot', xlab='Letters');"
"dev.off();"
"tmpf";
string tmpfile = R.parseEval(cmd);
cout << "Using plot " << tmpfile << endl;
unlink(tmpfile.c_str());
そしてIはGでコンパイルたい++
g++ -I/home/robert/R/x86_64-pc-linux-gnu-library/3.2/Rcpp/include
-I/home/robert/R/x86_64-pc-linux-gnu-library/3.2/RInside/include
-I/usr/share/R/include -L/usr/lib/R/lib -lR
-L/home/robert/R/x86_64-pc-linux-gnu-library/3.2/Rcpp/libs -lRcpp
-L/home/robert/R/x86_64-pc-linux-gnu-library/3.2/RInside/lib -lRInside
Frequency-Analyzer.cpp
をエラー読み取り:
/usr/bin/ld: cannot find -lRcpp
collect2: error: ld returned 1 exit status
を
-L/home/robert/R/x86_64-pc-linux-gnu-library/3.2/Rcpp/libs
は、 "libRcpp.so"
ファイル。しかし、それはもはやリンクをサポートしていないので、私のディレクトリ内にlibファイルはありません。 RInsideでコンパイルするにはどうすればいいですか?
examples /ディレクトリにRInsideに含まれている(GNU)Makefileを使用してください。 –
ありがとうございます。これはうまくいった。これにより、プログラムの構築方法も少し分かりました。 – Robe
嬉しいことです。以下の答えをお待ちしています。 –