2016-08-24 8 views
-1

Rcppを初めて使用しています。私は次の問題の助けを求めています。 RcppArmadilloは動作しないようです。誰かが私にいくつかの提案を与えることができますか? 多くのありがとう!RcppArmadilloへの未定義の参照

グラム++ -m64 -I "D:/R/R-32~1.5/include" -DNDEBUG -I "D:/R/R-3.2.5/library/Rcpp/include" -I」 D:/R/R-3.2.5/library/RcppArmadillo/include "-I" D:/R/R-3.2.5/library/RcppProgress/ "-I" D:/ R/Rcode/Replicating/src "-I" D:/ R/Rcode/Replicating/inst/include "-I" d:/ RCompile/r-コンパイル/ local/local323/include "-O2 -Wall -mtune = core2 -c test.cpp -o /R/R-3.2.5/library/RcppProgress/include/progress.hpp:13:0、 TEST.CPPから:7: D:/ R /ファイルにおいてtest.o

がDから付属しましたR-3.2.5 /ライブラリ/ RcppProgress/include/interruptable_progress_monitor.hpp:101:0:警告:無視#pragma omp critical [-Wunknown-pragmas]

D:/R/R-3.2.5/library/RcppProgress/include/interruptable_progress_monitor.hpp:147:0:警告:の#pragmaを無視して、原子[-Wunknown-プラグマ]

DをOMP:/ R/R-3.2.5 /ライブラリ/ RcppProgress/include/interruptable_progress_monitor.hpp:153:0:警告:無視#pragma omp critical [-Wunknown-pragmas]

g ++ -m64 -shared -s -static-libgcc -o sourceCpp_7.dll tmp.def test.o -LD:/R/R-32~1.5/bin/x64 -lRapap -LD:/R/R-32~1.5/bin/x64 -lRblas -lgfortran -Ld:/ RCompile/rコンパイル/ local/local323/lib/x64 -Ld:/ RCompile/rコンパイル/ local/local323/lib -LD:/R/R-32~1.5/bin/x64 -l

テスト.o:test.cpp :(。テキスト+ 0x61ee): `mvrnormArma(arma :: Col、arma :: Mat、int) 'への未定義参照'

test.o:test.cpp :(。text + 0x6d0e):mvrnormArma(ARMA ::コル、ARMA ::マット、int型)」 `への未定義の参照が

collect2は:ldは返さ1の出口持つのfaily共通と明らかに誤りのように見える状態

+1

まあ、あなたのコードを含める必要はありますが、ソースファイルに '[Rcpp :: depends(RcppArmadillo)]]'を入れなかったと思います。 – nrussell

+1

@nrussell:リンクエラーです。コンパイルエラーではありません。下の私の答えを見てください。 –

答えて

3

src/Makefileを更新するのを忘れて、ここに

PKG_LIBS = $(LAPACK_LIBS) $(BLAS_LIBS) $(FLIBS) 

ですので、が必要です LAPACKとBLASの機能があります。それは価値がある何のため

あなたは、一般的に推奨されるようRcppArmadillo.package.skeleton()から開始することを選択した場合、これはまた、あなたのために自動的にを追加されます。

+1

完璧な答えをありがとう。私の愚かな間違いで申し訳ありません – Captain

関連する問題