【问题标题】:Visual Studio 2015 - control the linking orderVisual Studio 2015 - 控制链接顺序
【发布时间】:2016-02-01 01:27:13
【问题描述】:

我有一个较旧的 Visual Studio 2010 项目。最近我对它重新产生了兴趣,因此我将其转换为 VS 2015 项目。一切顺利,没有报告任何问题,编译成功。

现在,问题在于创建的 .obj 之一必须是第一个被链接的东西(输出必须是多引导兼容的,因此我必须确保多引导标头是应该的是)。

对于旧版本的 VS,这是以一种有点 hackish 的方式完成的:必须是第一个的文件的名称以 '__' 开头(那时我像个孩子,并不总是在想如何只要他们工作就做正确的事)。自然,这不再起作用了。

那么,如何告诉链接器某个链接顺序是预期的呢?或者,在问题的上下文中,如何使用 VS 2015 构建兼容多引导的二进制文件?

编辑:我已经选择了一个正确的答案,但我想指出,如果有人遇到同样的问题,还有另一种方法。您可以为多重引导标头指定一个部分名称(我们称之为 .boot),然后将其与文本部分合并(请参阅https://msdn.microsoft.com/en-us/library/wxz26dz2.aspx)。要了解如何为多引导标头指定节名称,请阅读汇编程序的文档(或用于生成带有标头的 .obj 的文档)。

【问题讨论】:

    标签: visual-studio linker multiboot


    【解决方案1】:

    还是有点老套,但我会考虑使用#pragma init_seg(lib)

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-08-24
      • 2016-03-21
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-06-05
      相关资源
      最近更新 更多