【发布时间】:2014-07-31 21:52:43
【问题描述】:
我正在尝试清理 fortran make 进程以进行分发。目前,制作了两个库,然后编译链接到库并包含模块文件的可执行文件。我从以前的答案 (Distribute compiled fortran library with module files) 中看到,您无法摆脱模块文件,并且它们对于每台机器和编译器都可能不同。这很烦人。
但是,我的库中的代码完全由模块组成。似乎我根本不需要库部分;我可以只包含模块。我已经尝试过了,它确实可以在小示例上编译和运行。
这是否总是有效(当我只有库中的模块时)?这是最佳实践吗?我是否应该考虑重写我的库而不是使用模块,这样我就可以避免所有这些编译器依赖项并只分发 lib*.a 文件?这就是this document 所指的使用子模块(没有人支持static lib with many modules)
【问题讨论】:
标签: module fortran shared-libraries