簡體   English   中英

在Linux上編譯一個fortran程序並將可執行文件移至另一台Linux機器

[英]Compiling a fortran program on linux and moving the executable to another linux machine

我有一個在博士期間用Fortran編寫的代碼,現在我正在與一些使用Linux的研究人員合作,他們需要我的模型,基本上是一個可執行文件。 將來,我可能會將其開源,但要知道他們只想要可執行文件,這還因為他們不是程序員,並且一生中從未編譯過程序。 所以問題是:是否可以在我的linux機器上編譯它,然后將其發送給他們以便在另一台linux機器上使用它?或者linux版本和發行版很重要嗎? 非常感謝你A.

如果您不使用許多庫,則可以這樣做。 一種選擇是靜態鏈接可執行文件( -static或類似的編譯器選項)。 您需要為此擁有所有所需庫的靜態版本。 后綴為.a 默認情況下,它們通常沒有安裝在Linux發行版中,並且通常根本沒有在存儲庫中提供它們。

在我的發行版(OpenSuSE)中,它們位於glibc-devel-staticlapack-devel-static類的軟件包中。

另一種選擇是在用戶將擁有的兼容發行版上編譯可執行文件(GLIBC版本很重要),並為可執行文件提供所需的所有.so動態鏈接庫。

所有這些都假定您使用相同的平台,如i586amd64arm如wallyk注釋。 我通常以為您在PC上。 您可以通過-m32-m64選項強制大多數編譯器生成32位或64位可執行文件。 為此,您需要正確版本的開發庫。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM