【问题标题】:C++ Builder 10.2.3 [ilink32 Error] Fatal: Unable to open file 'FORMS.OBJ'C++ Builder 10.2.3 [ilink32 错误] 致命:无法打开文件 'FORMS.OBJ'
【发布时间】:2018-09-07 03:14:37
【问题描述】:

我正在将一个大型项目从 Borland C++ Builder 6 转换为 Embarcadero C++ Builder 10.2.3 并收到错误

[ilink32 Error] Fatal: Unable to open file 'FORMS.OBJ'

当我转换时。 我创建了一个新项目,然后将所有原始源文件添加到新项目中,并将所有与包含相关的表单转换为新的 vcl 包含。据我所知,源代码中的任何地方都没有引用“FORMS.OBJ”。我正在寻找关于下一步尝试或寻找什么的任何想法。

【问题讨论】:

  • 目标文件是从源文件编译而来的。你那里有 FORMS.CPP 或类似的东西吗?
  • 另外,这里有一个类似的问题:stackoverflow.com/questions/32870402/…
  • 不,该项目没有任何名为“FORMS.*”的文件
  • 你能看到带参数的实际链接器命令吗?
  • 我是这个 C++ 构建器的新手,你知道我在哪里可以找到它或者如何让它显示在错误日志中吗?

标签: c++ linker-errors c++builder c++builder-6


【解决方案1】:

库文件未更新,正在寻找 FORMS.OBJ。删除文件并删除对库的所有引用后,不再有链接器错误。

【讨论】:

  • 是的,这是常见的新手错误,例如删除事件主体 .... 在构建器 IDE 中,您只删除代码(保留标题和括号 {})并保存项目 IDE 将自动删除所有引用清空 VCL 样式的函数/事件,而不是函数/事件。如果您手动执行此操作,则会遇到问题,需要自行删除所有底层内容...
  • @Spektre:你能进一步解释一下吗?我收到 ALIASREC.obj 的链接错误,如果我检查计算机上每个文件的内容,则没有提及 ALIASREC。我已将 C++ Builder 2010 项目移至 C++ Builder 10.3.2,创建了新项目并添加了 .h 和 .cpp 文件。
  • @inquam Google search hints its a new IDE related bug ...删除项目中的所有临时文件(tds,obj,exe,...)并再次编译...它在BCB中不时发生年龄,但每个 IDE 都会引发不同的错误/行为......不用担心 MSVCPP 和 GCC 是相同的(至少在我使用的平台上),如果不是更糟的话
  • @Spektre 我已经尝试清洁所有东西。对整个项目文件夹执行“grep -riI aliasrec”不会返回任何结果。即使在 RAD Studio 10.3.2 的整个安装文件夹上执行此操作也不会返回任何内容。我猜可能有一些编译后的文件在某处带有引用,这使我无法通过搜索找到它。
  • @inquam 是的,那些在 BCB6 和更新版本中常见的错误...有时也有助于手动将#include 添加到包含组件的 VCL h 文件中,它抱怨您需要在哪个组件上找到你自己的......在这种情况下,我通常会在总指挥官中使用文本搜索来搜索 VCL 头文件。这通常发生在较旧的组件(从 win 3.X 开始),例如页面选项卡,有时甚至是文件浏览器......但是我发现如果您在项目中收到很多警告或者我的代码太多,这种混乱情况会更频繁地发生5-10 MByte 的代码,我有这个 bug ~ 每年 2 个
【解决方案2】:

与使用 C++ 个性相比,我发现在 Delphi 个性下工作时 RAD Studio 更加稳定。

如何解决上述问题:确保 FrameworkType 设置为 VCL 而不是 None。我发现我的设置为“无”:

<FrameworkType>VCL</FrameworkType>   

然后我看到 IDE 也倾向于 f***** 这个条目:

<AppType>Package</AppType>

最后一个错误。 IDE 忘记添加此条目:

    <PackageImport Include="vcl.bpi">
        <BuildOrder>4</BuildOrder>
    </PackageImport>

找到 PackageImport Include="rtl.bpi" 条目并将其放在它下面。
删除“Win32”,重新启动 IDE 并重建(如果需要,还可以使用 2-3 滴冬青水)。在此之后,IDE 不应再抱怨了。

【讨论】:

    猜你喜欢
    • 2018-07-26
    • 2015-12-28
    • 1970-01-01
    • 2020-07-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-04-21
    • 2011-04-02
    相关资源
    最近更新 更多