我有一堆 Fortran77 代码需要用于我的研究,但我在编译它以使其在我的 MacBook 上运行时遇到了麻烦,所以我求助于 Julia。我对这门语言很陌生,但我一生都无法弄清楚如何直接在 Julia 中执行 Fortran 脚本。我想要的只是有一个运行 F77 脚本并将控制权直接交给 Fortran 的程序。我只想用 Julia 或 Numpy 重写它,但有大约 10,000 行代码和不到 200 行注释,我没有时间这样做。
最佳答案
从你的问题的措辞看来,你想使用 Julia 直接调用 Fortran“脚本”——大概是 Fortran .f
源文件——准确吗?
正如其他人在评论中指出的那样,Fortran 不是一种脚本语言:您不能直接执行 Fortran 源文件;相反,您必须使用 Fortran 编译器(例如 gfortran 、 ifort )将 Fortran 程序转换为您要运行程序的系统的 native 库或可执行文件。 Julia 不会以任何方式帮助解决这个问题,因为 Julia 不是 Fortran 解释器或编译器 - 它既不能直接运行 Fortran 代码,也不能将 Fortran 源文件转换为可执行文件/库。
但是,如果您已经编译了 Fortran 共享库(Linux 上的 .so
文件、macOS 上的 .dylib
、.dll
在 Windows 上),您可以从 Julia 轻松调用它,如 Integrating Fortran code in Julia 中所述。 。如果您可以将 Fortran 源代码编译为可执行文件(而不是共享库),那么您不需要任何其他东西来运行它 - 根据定义,可执行文件是独立的。
大多数使用 Fortran 或 C/C++ 等编译语言的项目都带有 Makefiles或其他机制来帮助调用编译器生成适当的二进制工件(可执行文件和/或库)。
关于fortran - 使用 Julia 编译 Fortran77,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44252373/