我试图调用用Fortran创建的exe文件和R中的gfortran编译器。但是,R在我的两台计算机上没有显示相同的输出。
假设我有一个非常简单的Fortran代码:
program Main
write(*,*) 'Hello World !'
end
我使用gfortran创建了一个exe文件,给出:hello.exe然后,当我使用R调用R中的exe时:
shell('hello.exe')
在我的第一台电脑上,我得到了'Hello World!'在R控制台上打印,而在另一个,代码工作,但没有打印,我不明白为什么。我猜两台计算机之间必须有所不同,我不知道是什么(两者都使用相同的R和gfortran版本)。
最后,我找到了解决方案。我认为两台计算机共享相同版本的R,但事实并非如此。打印消息的那个用R 3.5.0运行而另一个用以前的版本运行。
令人惊讶的是,显然无法使用以前版本的R显示消息。