Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Cross-Platform-Entwicklung (https://www.delphipraxis.net/91-cross-platform-entwicklung/)
-   -   MAC OS SQLite Distribution (https://www.delphipraxis.net/210040-mac-os-sqlite-distribution.html)

arnof 20. Feb 2022 18:53

MAC OS SQLite Distribution
 
Hi was muss man mitliefern bei MAC OS, wenn man eine SQLite Datenbank ansteuern will X86 und ARM.

Irgendwo habe ich mal was gelesen, das man die Treiber nun direkt einbinden kann (FireDac), leider ist die Embacadero Doku down.

Also welche units muss man einbinden oder welche dylib ?

DeddyH 20. Feb 2022 19:05

AW: MAC OS SQLite Distribution
 
Wenn ich mich recht entsinne, muss man nur eine evtl. vorkonfigurierte Datenbank mitliefern. Legt man diese allerdings ggf. zur Laufzeit an, entfällt dieser Schritt auch.

arnof 20. Feb 2022 19:19

AW: MAC OS SQLite Distribution
 
ich meine die DLLs unter Windows bzw dylib unter Mac OS

Ich hatte mal eine libsqlite3.dylib 2014 erzeugt. Nun müsste man das ja auch für ARM machen oder halt nicht.

Was muss man wo und wie mitliefern bzw kann man das direkt einbinden.

DeddyH 20. Feb 2022 19:23

AW: MAC OS SQLite Distribution
 
Nach meiner Kenntnis ist auf Android und iOS SQlite bereits integriert, also wohl auch der passende Treiber. Zur Not kann man aber auch die Offline-Hilfe konsultieren, ggf. muss man sie nachinstallieren.

arnof 20. Feb 2022 19:57

AW: MAC OS SQLite Distribution
 
die Hilfe ist nichts sagend ... Und verweist auf das Onlineanleitung die leider down ist. Montag ist in den USA Feiertag, dann müssen wir uns wohl gedulden.

Rollo62 21. Feb 2022 06:26

AW: MAC OS SQLite Distribution
 
Schau mal im Project/Deployment, unter "Add Featured Files", da muss man den Sqlite Engine anklicken ...

arnof 25. Feb 2022 16:52

AW: MAC OS SQLite Distribution
 
Zitat:

Zitat von Rollo62 (Beitrag 1502526)
Schau mal im Project/Deployment, unter "Add Featured Files", da muss man den Sqlite Engine anklicken ...

Vielen Dank.

Die Lösung ist hier aber eine andere: FireDac ist Default auf slStatic eingestellt, was bei Windows die sqlite3.dll ersetzt, bei MACOS wird diese Einstellung nicht unterstützt.

Hier nun der Bug/Feature, da das nicht unterstützt wird, schaltet FireDac aber nicht auf slDynamic.

Wenn man das aber manuell macht, dann gehts sofort.

Falls man mir nicht folgen kann: es geht um TFDPhysSQLiteDriverLink -> EngineLinkage = slDynamic

Delphi-Quellcode:
 {$IFDEF MACOS}
 FDPhysSQLiteDriverLink1.EngineLinkage:=TSQLiteEngineLinkage.slDynamic;
 {$ELSE}
 FDPhysSQLiteDriverLink1.EngineLinkage:=TSQLiteEngineLinkage.slStatic;
 {$ENDIF}
Dann ist mein Problem gelöst.


Alle Zeitangaben in WEZ +1. Es ist jetzt 14:09 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz