gpt4 book ai didi

c++ - LNK2013错误 "fixup overflow"

转载 作者:塔克拉玛干 更新时间:2023-11-03 01:15:22 27 4
gpt4 key购买 nike

我有一个用 C++ 编写的 Windows 8 Metro 应用程序,我正在尝试将其编译为 ARM。在链接过程中,我遇到了以下错误的许多实例:

"error LNK2013: BLX23(T) fixup overflow.  Target '<mangledName>' is out of range"

MSDN site说:“您可以通过创建多个图像或使用/ORDER 选项来解决此问题,这样指令和目标就更靠近了。”

但我真的不明白如何让它发挥作用。有问题的符号是编译器生成的,不涉及安腾架构,因此该页面上的其他建议不适用。此外,有错误的文件是 *.g.cpp 文件,由编译器从项目中包含的 xaml 页面生成。

metro 应用程序在 Win32 配置上运行得很好,所以我想知道是否有更多 ARM 经验的人可以更好地了解如何解决此类问题。

设置是 Windows 8 RP x64 上的 Visual Studio 2012 RC。

最佳答案

这是由于 ARM 增量链接中的一个不幸错误,可以通过禁用增量链接来解决。正如另一个答案中提到的,这是因为被调用函数和调用点彼此相距太远,以至于链接器需要插入长分支岛(并且在使用增量链接时创建长分支岛存在一个非常特殊的错误) .

据我所知,此错误并未针对 RTM 修复(当我自己发现此问题时,为 RTM 版本修复为时已晚)但它是已知的并计划在未来的版本中修复。

关于c++ - LNK2013错误 "fixup overflow",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11478055/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com