photor hat geschrieben: Do 10. Jul 2025, 15:43
Die Installation mittels FpcUpDeluxe funktioniert sehr gut (wenn(!) man wirklich alles, was von den Distributionspaketen kommen könnte, entfernt!).
Während FPC über die Systempackages zwar super funktioniert, und auf meinem Arch Linux hab ich es einfach darüber installiert und installier mir nur spezielle versionen (fixes, trunk, etc.) manuell, ist das bei Lazarus was anderes.
Das ding bei Lazarus ist, man muss Lazarus regelmäßig neu Kompilieren, wenn man Packages installiert z.B. wird Lazarus immer neu Kompiliert. Da du Lazarus als Systempackage aber nach /usr/local installierst, würde das dann root brauchen, und auf einem Multi-user betriebsystem bedeuten das jeder nutzer die selbe Konfiguration haben muss.
Um das zu umgehen wird Lazarus in das Nutzerverzeichnis kompiliert, und alle Packages da rein installiert. Du hast also eine Lazarus version in /usr/local und eine im nutzer Ordner.
Lazarus ist halbwegs schlau was das angeht und versucht immer die richtige zu starten, nach einem update, wenn also die in /usr/local neu ist wird die gestartet (bzw. man wird gefragt und das wird empfohlen) ansonsten wird die aus dem Nutzerverzeichnis gestartet.
Wie du dir aber sicher vorstellen kannst macht das alles recht kompliziert, weshalb es immer mal wieder zu fehlern kommen kann. Insbesondere wenn man was (bewusst oder versehentlich) and der LCL ändert, kann es zu ganz seltsamen Fehlern kommen.
Daher ist meine Empfehlung immer: Wenn es eine Aktuelle FPC version in den System-repos gibt die verwenden, ansonsten FPC manuell installieren. Und Lazarus dann einfach manuell im Nutzerverzeichnis installieren und über git updaten
alfware17 hat geschrieben: Do 10. Jul 2025, 18:56
Welche "Standard" Einstellung muß ich wählen bei FPCUPdeluxe, wenn ich eine "stabile" (heißt wohl freigegebene Version, die dann in Sourceforge erscheint) Installation von Lazarus 4.0 mit FPC 3.2.2 machen will? Die Begriffe wie Fix, Trunk usw verwirren mich ungemein...
Also es gibt die festen Versionsnummern, bei lazarus Major.Minor bei FPC oder auch früher bei Lazarus Major.Minor.Patch, wobei offizielle Versionsnummern immer grade sind (bei Lazarus 3.2, 3.4, 3.6, 3.8 oder aktuell 4.0, bei FPC 3.2.0, 3.2.2 und aktuell wird grade 3.2.4 vorbereitet).
Stable ist einfach der Begriff für die letzte feste Versionsnummer eines Offiziellen Releases die aktuell zur verfügung steht (also bei Lazarus 4.0 und bei FPC 3.2.2aktuell).
Fixes ist eine art Patch Kanal, da kommen regelmäßig änderungen zu der Offiziellen Version die keine neuen Sachen bereitstellen sondern einfach nur Fehler beheben.
Dieser kann sich grundsätzlich Täglich ändern und kann nett sein um bestimmte bugs zu umgehen, aber gleichzeitig findet hier nicht so gutes user Testing statt, es kann also sein das ein Fix von einem Bug 3 andere Sachen kaputt macht.
Trunk ist die Entwicklerversion, die ändert sich Täglich (wenn nicht sogar stündlich) und enthält immer die neusten Updates wenn sie reingemerged wurden. Kein Testing, kein gar nix. Es kann passieren das es spontan mal für 1-2 stunden nicht mal mehr kompiliert oder ähnliches.
Faustregel: Wenn man unsicher ist oder sicher gehen will das es stabil bleibt nimmt man stable, wenn man bestimmte bugfixes braucht dann fixes und trunk ausschließlich nur wenn man neue features testen (oder aktiv entwickeln) will und dann auch nur wenn man damit leben kann das dinge mal komplett außerhalb der eigenen Kontrolle kaputt gehen können