我试图将我的代码从2006年的Borland迁移到柏林的Embarcadeiro。
我已经在码头现场更新了BDE。
我已经包含了包含.hpp的新内容。
我已经通过文本编辑器删除了项目中的依赖项,我已经在代码中插入了pragma警告而没有解决它。
我已经禁用了运行时库等等......
所有内容都在Win32上编译并运行。
但在win64中不起作用
[ilink64 Error] Unable to open file 'DRTL.LIB'
答案 0 :(得分:1)
首先,我为Embarcadero安装了BDE升级包(5)。
我打开了Bde.BDTables.hpp(c:\ program files(x86)\ Embarcadero \ Studio \ 18.0 \ include \ windows \ rtl \ Bde.BDTables.hpp)文件,并用以下代码替换了部分代码代码段(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中编译没有问题
参考文献: