Wie statt Quellcodes die compilierten Units benutzen?

Für allgemeine Fragen zur Programmierung, welche nicht! direkt mit Lazarus zu tun haben.
Antworten
thosch
Beiträge: 324
Registriert: Mo 10. Jul 2017, 20:32

Wie statt Quellcodes die compilierten Units benutzen?

Beitrag von thosch »

Hallo,

ich habe das Problem dass ich Units eines Projektes übersetzt habe und nun will ich nicht mehr die Quellcodes dieser Units zum Übersetzen von Anwendungen einbinden, sondern ausschließlich nur noch die übersetzten Units.

Wie veranlasse ich Lazarus dazu, nur im Units Ordner nach vorausgesetzten Units zu suchen, wenn der Units Ordner nutzerdefiniert ist? Der Units Ordner meiner Bibliothek.

Warf
Beiträge: 1908
Registriert: Di 23. Sep 2014, 17:46
OS, Lazarus, FPC: Win10 | Linux
CPU-Target: x86_64

Re: Wie statt Quellcodes die compilierten Units benutzen?

Beitrag von Warf »

Am besten kompilierst du alle units in Object-Files, dann erstellst du wrapper units die alle funktionen als external bereitstellen und statisch ($L) gegen die objectfiles linken.

Aber, du musst dir im klaren sein das du entweder nur simple typen benutzen kannst (also keine Klassen, Objects, Strings oder dynamische Arrays), in diesem fall gibt es keinen Grund nicht das ganze als statische oder dynamische library zu bauen, oder du die units nur exakt gegen die selbe fpc version bauen kannst die du zum bauen verwendet hast (Da ein versionswechsel nicht garantiert das das layouting und handling dieser datentypen gleich ist).

Es gab mal ein Rich Internet Application Framework für Delphi und FPC was so vorgegangen ist (Raudus glaube ich), das war aber praktisch unbenutzbar, da es exakt nur mit FPC version 2.5 und lazarus 1.6.4 oder so funktioniert hatte, und über jahre hinweg (keine ahnung wie der stand aktuell ist) keine aktuelle FPC und Lazarus version unterstützt hat.

Antworten