【发布时间】:2011-07-14 02:53:17
【问题描述】:
去年,我在一所研究型大学工作,开始使用 Fortran 进行编程。我之前的大部分经验都是使用 PHP 或旧 ASP 等网络语言,所以我是编译语句的新手。
我正在修改两个不同的代码。
一个在创建可执行文件之前有一个从模块创建 .o 文件的显式语句(例如 gfortran -c filea.f90)。
另一个是直接创建可执行文件(有时会创建 .mod 文件,但不创建 .o 文件,例如 gfortran -o executable filea.f90 fileb.f90 mainfile。 f90)。
- 是否有原因(可能是 Makefile 除外)一种方法优于另一种方法?
【问题讨论】:
-
一般我们使用obj文件来“缓存”编译。使重用旧编译代码变得容易,以最大限度地减少编译时间。
-
“代码”在此上下文中是不可数名词;因此,“两个代码”是不正确的。
-
使用“代码”作为程序和库的计数名词,不幸的是,物理学家普遍使用这种用法。该社区不太可能接受更正。
-
@wnoise 但我们会尝试 gosh darnit。我们会努力的。
-
哈,谢谢指正。在我开始在这里工作之前,我从未将这些程序称为“代码”。
标签: c++ c compilation fortran object-files