使用 .fortran() 编写调用 Fortran 库的 R 包

Writing R package that call Fortran library using .fortran()

参考,

我的 R 包安装也有类似的问题。我确实安装了包,但在调用库后 R 中出现错误:

library(NEpidemic)

random_epi()

Error in .Fortran("random_epi", : "random_pi" not resolved from current namespace (NEpidemic)

然后我尝试了 Ignacio 在 post 中提到的相同方法,即在命名空间文件中添加 useDynLib(random_epi) 。但是它给出了一个错误,说它无法安装我的包。 错误:

Error in library.dynam(lib, package, package.lib) : shared object ‘random_epi.so’ not found

Error: loading failed

我可以看到包名的 .so 文件,即 NEpidemic.so,但看不到 SRC 文件夹中的子程序代码。我只能看到 random_epi.o

已解决此问题。编辑命名空间文件。

参考: http://comments.gmane.org/gmane.comp.lang.r.mac/9789