【发布时间】:2016-06-07 18:37:41
【问题描述】:
我对编程非常陌生,并且在 R 中创建包时遇到困难。我正在尝试在 Fortran 中制作源代码以帮助我构建 R 包。我用 Fortran 写了一个程序,它给了我一个简单的流行病,后来我把它包装成一个从 R 调用的子程序。现在当我编译包装器使它成为 .so 文件时,它给出了以下错误。
$ R CMD SHLIB random_epi.f95
错误:
gfortran-4.8 -fPIC -Wall -g -O2 -c random_epi.f95 -o random_epi.o make: gfortran-4.8: 没有这样的文件或目录 make: *** [random_epi.o] 错误 1
我使用的是 Mac OS X El Capitan 和 gfortran 6.1。我已经搜索了很多,但找不到解决方案。对于解决我的问题的任何帮助,我将不胜感激。
【问题讨论】:
-
您正在使用
gfortran-6.1,而错误消息指出系统找不到gfortran-4.8。我不太了解创建包,但我怀疑您需要更正 Makefile 中的编译器标志并指定应该使用gfortran或gfortran-6.1,而不是gfortran-4.8。 -
OS X 将
.dylib用于库,而不是.so... -
@RHertel :我从 home brew 下载了 R,它会自动显示 fortran 4.8
-
otool -L random_epi.f95的输出是什么?