我试图在我的macOS应用程序上使用ZeosLib,该应用程序在Windows上工作,我现在试图将其适应macOS,但当它启动时,它给了我以下错误:
找不到任何动态库或没有找到任何动态库:libcrypt.dll.25、libfbembed.dll.25、libfbclient.dll.25、libcrypt.dll.21、libfbembed.dll.21、libfbclient.dll.20、libfbembed.dll.20、libfbclient.dll.20、libfbclient.dll.2、libfbembed.dll.15、libfbclient.dll.15、libfbclient.dll.15、libcrypt.dll、libfbembed.dll、libfbclient.dll、libcrypt.dll,libgds32.dll,libgds.dll!
如果位置无效,请使用TZConnection.LibraryLocation。
在哪里可以找到这些DLL文件?
这是导致错误的代码(是的,我需要TFDConnection和TZConnection):
unit MainDB;
interface
uses
System.SysUtils, System.Classes, FireDAC.Stan.Intf, FireDAC.Stan.Option,
FireDAC.Stan.Param, FireDAC.Stan.Error, FireDAC.DatS, FireDAC.Phys.Intf,
FireDAC.DApt.Intf, FireDAC.Stan.Async, FireDAC.DApt, FireDAC.UI.Intf,
FireDAC.Stan.Def, FireDAC.Stan.Pool, FireDAC.Phys, FireDAC.Phys.FB,
FireDAC.Phys.FBDef, FireDAC.FMXUI.Wait, Data.DB, FireDAC.Comp.Client,
FireDAC.Comp.DataSet, FireDAC.Phys.IBBase, ZAbstractRODataset,
ZAbstractDataset, ZDataset, ZAbstractConnection, ZConnection;
type
TMDB = class(TDataModule)
FDConnection2: TFDConnection;
FDQuery2: TFDQuery;
DocConnection: TZConnection;
FDQuery1: TZQuery;
procedure DataModuleCreate(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
MDB: TMDB;
implementation
{%CLASSGROUP 'FMX.Controls.TControl'}
{$R *.dfm}
procedure TMDB.DataModuleCreate(Sender: TObject);
begin
//DocConnection.LibraryLocation := '/Library/Frameworks/Firebird.framework/Versions/A/Libraries';
FDConnection2.Params.Add('Database='+ExtractFilePath(ParamStr(0))+'DATA.FDB');
FDConnection2.Connected := True;
DocConnection.Database := ExtractFilePath(ParamStr(0))+'DATA.FDB';
DocConnection.Connected := True;
end;
end.
字符串
1条答案
按热度按时间7lrncoxx1#
错误消息不是
找不到任何动态库或没有找到任何动态库:libcrypt.dylib.25、libcrypt.dylib、libcrypt.dylib!如果位置无效,请使用TZConnection.LibraryLocation。
令人惊讶!尝试一下如果您禁用Zeos.inc底部附近的INTERBASE_PROPT定义会发生什么
字符串
重新编译zeos组件,看看会发生什么。
如果未解决,则:
根据您使用的ZEOSLib版本,可能还有 Delphi 版本
看看. ZeosLib\src\plain\ZPlainFirebirdInterbaseDriver.pas你会发现一些常量照顾火鸟版本
型
你可以修改这些LINUXxx_DLL的位置(不推荐)
或者理解“Sharedsuffix”(在. ZeosLib\src\core\Zerubility.pas中),或者
型
我猜这个达尔文def不是一个 Delphi 指令(Lazarus?)应该是MACOS?另一个解决方案是编辑ZCore.inc在... ZeosLib\src\core目录中,并添加
型
重新编译zeos组件,看看会发生什么(我没有苹果硬件测试)