1

我在攻读博士学位期间用 Fortran 编写了一段代码,现在我正在与一些使用 Linux 的研究人员合作,他们需要我的模型,这基本上是一个可执行文件。将来我可能会将它开源,但要知道他们只想要可执行文件,也因为他们不是程序员,他们一生中从未编译过程序。所以问题是:是否可以在我的 linux 机器上编译它,然后将其发送给他们以便在另一台 linux 机器上使用它?或者 linux 版本和发行版是否重要?非常感谢A。

4

1 回答 1

1

如果你不使用很多库,你可以这样做。一种选择是静态链接可执行文件(-static或类似的编译器选项)。您需要为此拥有所有所需库的静态版本。有.a后缀。它们通常不会默认安装在 Linux 发行版中,并且通常根本不会在存储库中提供。

在我的发行版(OpenSuSE)中,它们位于类似的包glibc-devel-staticlapack-devel-static

另一种选择是在用户将拥有的兼容发行版上编译可执行文件(GLIBC 版本很重要),并.so为您的可执行文件提供他们需要的所有动态链接库。

所有这些都假设您使用相同的平台,喜欢或i586喜欢wallyk 评论。我主要假设您在PC上。您可以通过or选项强制大多数编译器生成 32 位或 64 位可执行文件。为此,您需要正确版本的开发库。amd64arm-m32-m64

于 2013-04-29T14:44:02.110 回答