こんにちは、rcpp を使用しようとしています。このために、lib-file (と同じ名前) を使用して dll をロードする cpp コードが必要です。私が実行させたコードは次のとおりです。
cppFunction(includes=c("#include "windef.h","#include \"C:/data/Rdata/IHUAPI.H\" "), 'int functietom(int a){long serverhandle;int lRet;lRet = ihuConnect ( "historian1",NULL,NULL, &serverhandle ); return 5;}', verbose
= TRUE)
次のエラーが表示されます。
`ihuConnect@16' collect2 への未定義の参照: ld が 1 つの終了ステータスを返しました inDL(x, as.logical(local), as.logical(now), ...) でエラーが発生しました:
共有オブジェクト 'C:/Users を読み込めません/user1663/AppData/Local/Temp/RtmpSW1Ki7/sourcecpp_1a04df63309/sourceCpp_26588.dll': LoadLibrary エラー:
ihuConnect
関数は ファイルと ファイルにありihuapi.lib
ますihuape.dll
。Visual Studio の c++ では、追加の依存関係として lib ファイルを追加すると、このエラーが発生することもあり、コンパイルで lib ファイルを追加するのを忘れていたため、このエラーを取り除きます。
したがって、私の質問は次のとおりです。この lib ファイルをコンパイルのオプションとして追加するにはどうすればよいですか。
dyn.load を使用する場合
(「C:/data/Rdata/ihUAPI.dll」)
そして、それがロードされているかどうかを確認してから、彼は「はい」と言います
そのため、dllには関数が含まれていないようですが、ビジュアルスタジオから使用すると含まれます。
lib-files と ddl-files のヘルプをお願いします
トム・ワンベック