【发布时间】:2018-08-28 08:27:45
【问题描述】:
我正在研究从 Fortran 代码创建可移植静态 Linux 二进制文件的选项(从某种意义上说,二进制文件应该能够在任何新的和相当旧的 Linux 发行版上运行)。如果我理解正确(从 C 推断),可移植性的主要问题是 glibc 是向前但不向后兼容的(即在旧发行版上创建的静态二进制文件将适用于较新的发行版,但反之亦然)。这至少在我迄今为止有限的测试中似乎有效(需要注意的是,在某些情况下,使用 Scratch 文件会导致在较新发行版上运行的段错误)。
似乎至少在 C 中可以通过添加旧的 glibc 标头来避免在旧发行版上进行编译,如
中所述https://github.com/wheybags/glibc_version_header
此特定方法不适用于 Fortran 代码和编译器,但我想知道是否有人知道类似的方法(或者更具体地说,创建可移植 Fortran 二进制文件可能需要什么,是旧的 glibc 足够还是必须也使用旧的 libfortran 等)?
【问题讨论】:
标签: linux static binary fortran portability