C++Builder - 仅链接一个运行时包 - 所有其余的都已编译?

问题描述 投票:0回答:1

x64 版本的 C++Builder 应用程序在使用 SQLite 时为 350+ MB,现在使用 C++Builder 12 时为 700+ MB,未修复它。必须使用

sIFDStatic
EngineLinkage,有没有办法只将该一个库作为
.dll

这是一个 350+ MB 的异常表,并且通过这个新的

sIFDStatic
使用旧的 SQLite,它似乎并没有排除新的 SQLite,而是以某种方式链接两者。

我认为运行时包是

FireDACSqliteDriver
。因此,如果我可以通过该外部链接,我就有希望解决这个问题。

但是,我在项目设置中没有看到要排除的选项,它

Link with Runtime Packages
打开或关闭。

c++builder firedac
1个回答
0
投票

这适用于标准/最新版本的 sqlite,但如果您需要 FDE,则不适用。

  1. $(BDS)\source\data iredac 中有两个文件是必需的。
  2. 使“FireDAC.inc”可写。
  3. 在编辑器中打开文件并搜索“{.$UNDEF FireDAC_SQLITE_STATIC}"
  4. 删除句点又名“.”
  5. 将“FireDAC.Phys.SQLiteWrapper.Stat.pas”添加到您的项目中并 构建。
© www.soinside.com 2019 - 2024. All rights reserved.