【问题标题】:ilink64 Error - Fatal: Unable to open file 'DBRTL.LIB'ilink64 错误 - 致命:无法打开文件 'DBRTL.LIB'
【发布时间】:2023-03-28 21:05:01
【问题描述】:

我正在尝试将我的代码从 borland 2006 迁移到 Embarcadeiro Berlin。

我已经更新了码头站点上的 BDE。

我已经为新的包含了 .hpp。

我已经通过文本编辑器删除了项目中的依赖,我已经在代码中插入了pragma警告,没有任何解决。

我已经禁用了运行时库等...

一切都在 Win32 上编译和工作。

但是在win64下不行

dbrtl.lib

[ilink64 Error] Unable to open file 'DRTL.LIB'

【问题讨论】:

    标签: migration c++builder-2010


    【解决方案1】:

    首先我为 Embarcadero (5) 安装了 BDE 升级包。

    我打开了 Bde.BDTables.hpp (c:\program files (x86)\Embarcadero\Studio\18.0\include\windows\rtl\Bde.BDTables.hpp) 文件,并用以下代码替换了部分代码代码 sn-p (4):

    #ifdef USEPACKAGES
    #pragma link "dbrtl.bpi"
    #pragma link "vcldb.bpi"
    #pragma link "vcl.bpi"
    #else
    #pragma link "dbrtl.lib"
    #pragma link "vcldb.lib"
    #pragma link "vcl.lib"
    #endif
    
    So, I recoded this to state:
    #ifdef USEPACKAGES
    #pragma link "dbrtl.bpi"
    #pragma link "vcldb.bpi"
    #pragma link "vcl.bpi"
    #else
    #ifdef _WIN64
    #pragma link "dbrtl.a"
    #pragma link "vcldb.a"
    #pragma link "vcl.a"
    #else
    #pragma link "dbrtl.lib"
    #pragma link "vcldb.lib"
    #pragma link "vcl.lib"
    #endif
    #endif
    

    我还删除了对运行时包的任何引用:

    并将 _WIN64 指令放在平台 64 上

    最后我能够在 WIN64 下毫无问题地编译

    参考资料:

    ilink64-error-fatal-unable-to-open embarcadero downloads

    【讨论】:

      猜你喜欢
      • 2022-09-24
      • 1970-01-01
      • 2014-04-21
      • 2011-04-02
      • 2013-09-08
      • 1970-01-01
      • 1970-01-01
      • 2016-02-09
      • 2015-11-30
      相关资源
      最近更新 更多