Delphi开发Mac桌面应用FireDAC连SQLite遇libcgsqlite3.dylib未加载错误
Delphi Mac应用FireDAC连接SQLite缺失libcgsqlite3.dylib问题解决
是的,从Windows构建Mac桌面应用时,必须手动部署libcgsqlite3.dylib库文件,以下是具体解决步骤:
找到库文件位置
在Windows的Delphi安装目录中,定位对应Mac平台的FireDAC SQLite库,路径示例(以Delphi 11 Alexandria为例):C:\Program Files (x86)\Embarcadero\Studio\22.0\Redist\osx64\libcgsqlite3.dylib
注意替换22.0为你的Delphi版本号(比如Delphi 10.4是21.0)。添加到项目部署列表
- 在Delphi的Project Manager中,右键你的Mac项目,选择Deployment
- 点击Add按钮,选中刚才找到的
libcgsqlite3.dylib文件 - 将Remote Path设置为
Contents/MacOS/(与应用的二进制文件同目录) - 确认当前Deployment配置(Debug/Release)与你构建的版本一致
路径验证
Mac应用的@rpath默认包含Contents/MacOS/目录,将库放在这里后,FireDAC就能自动找到它。如果仍有问题,可在FireDAC连接参数中显式指定库路径:FDConnection1.Params.DriverID := 'SQLite'; FDConnection1.Params.Add('LibraryName=Contents/MacOS/libcgsqlite3.dylib');关键注意事项
- 不要尝试将库放到
/usr/local/lib或/usr/lib等系统目录,Mac的应用沙箱机制会禁止应用访问这些位置,必须将库打包到应用包内部 - 确保使用的库文件与你的Delphi版本完全匹配,不同版本的库文件不兼容
- 不要尝试将库放到
内容的提问来源于stack exchange,提问作者Mike Stephenson
相关产品推荐
相关产品推荐

