【问题标题】:Is it Possible: Link object files, then link result to more object files?是否可能:链接目标文件,然后将结果链接到更多目标文件?
【发布时间】:2017-06-06 20:08:09
【问题描述】:

我是链接和编译过程的新手(如果你有很好的学习资源,请分享!),并且正在使用 makefile。很抱歉,以下内容听起来很明显。

假设我编译了 2 个.o 文件,然后链接它们。然后,我编译另一个.o 文件。我可以将初始结果与第三个目标文件链接吗?

【问题讨论】:

  • 你编译所有文件,然后链接它们。链接是最后一步。您可以编译目标文件,然后将其添加到库 (.lib) 文件中,但它仍然只有在所有编译完成后才能使用。
  • 这里有几种可能性,其中任何一种甚至全部都可能与您的实际需求无关。 “假设我编译了 2 个 .o 文件,然后链接它们”是什么意思尚不清楚。请发布示例命令行或 make 食谱来说明您的意思。

标签: compilation linker partial object-files


【解决方案1】:

是否可能:链接目标文件,然后将结果链接到更多目标文件?

是的:

ld -r -o foo-combined.o foo1.o foo2.o
gcc foo-combined.o bar.o -o a.out

-r 标志创建一个可重定位(对象)文件,它有效地合并了foo1.ofoo2.o

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2011-03-13
    • 1970-01-01
    • 1970-01-01
    • 2014-08-13
    • 2021-06-25
    • 1970-01-01
    • 1970-01-01
    • 2012-09-24
    相关资源
    最近更新 更多