は、私は自分のパッケージを達成するには、次の手順を使用しRcpp:定義されたパッケージでこの機能を実行できないのはなぜですか?</p> <pre><code>#include <Rcpp.h> using namespace Rcpp; // [[Rcpp::export]] int foo() { return 6; } </code></pre> <p>2)私はパッケージにそれを作るためにスケルトンを使用します:私は次のように非常に単純な関数を記述しようと</p> <p>1):
Rcpp.package.skeleton("newpackage",example_code=FALSE,cpp_files=c("New.cpp"))
3)私はコマンドを使用してCPPを実行します。
source("~/newpackage/src/New.cpp")
私はRの関数を呼びたいこの後
compileAttributes(pkgdir="/home/tw72/newpackage",verbose = getOption("verbose"))
:4)パッケージをロードするcompileAttributesを実行
foo <- function()
{
.Call("foo",PACKAGE="newpackage")
}
その後、エラーがある:
Error in .Call("foo", PACKAGE = "newpackage") :
"foo" というありませんパッケージ "newpackage"の.Call()で利用可能
私は同じproblemに遭遇しましたが、何が起こるか把握していない。 私を助けることができますか?私の上記のステップで何が問題なのですか?ありがとう。私の頭の上から
ありがとうございます。 私が試みる私は FOO <使用する場合 - 関数(){ は.call( "FOO"、PACKAGE = "newpackage") }を私は同じ問題に会いました。しかし、私はこのように変更したとき: foo < - function() { .Call( "newpackage_foo"、PACKAGE = "newpackage") } これは機能します。 – user2380245
複数のC++ファイルがある場合はどうなりますか? – qed
Rのすべての変数はベクトルです。 'cpp_files'にすべてリストしてください。 –