Naja, dummerweise braucht man dann aber auch die passenden 32bit Bibliotheken. Die will nicht jeder zusätzlich in seinem 64bit System rumschwirren haben.RSE hat geschrieben:Also wenn dein "Jedermann" mit Sicherheit Linux hat, dann sehe ich dein Problem nicht. Soweit ich weiß, können 64-Bit Betriebssysteme auch 32-Bit Programme ausführen (das ist zumindest bei Windows so), nur umgekehrt natürlich nicht. Am Besten du sagst noch mal genau, auf welchen Systemen dein Programm nun alles laufen soll und wo du die Probleme siehst.
Wie kann ich ein Programm für jedermann kompilierbar machen?
-
- Beiträge: 512
- Registriert: Mo 25. Aug 2008, 18:17
- OS, Lazarus, FPC: ArchLinux x86, WinVista x86-64, Lazarus 0.9.29, FPC 2.4.1
- CPU-Target: x86
- Wohnort: Chemnitz
Re: Wie kann ich ein Programm für jedermann kompilierbar machen?
-
- Beiträge: 462
- Registriert: Mi 30. Jul 2008, 13:11
- OS, Lazarus, FPC: WinXP SP3 (L 0.9.28.2 FPC 2.2.4)
- CPU-Target: 32Bit
- Kontaktdaten:
Re: Wie kann ich ein Programm für jedermann kompilierbar machen?
Achso. Na dann muss er eben 2 Versionen beilegen. Ich bin mal gespannt, auf was für Systemen er nun seine Software tatsächlich alles laufen lassen will. Der Großteil der Beiträge in diesem Thread fragt nur nach mehr Infos von AlciHitman hat geschrieben:Naja, dummerweise braucht man dann aber auch die passenden 32bit Bibliotheken. Die will nicht jeder zusätzlich in seinem 64bit System rumschwirren haben.

Seit er seinen neuen Computer hat, löst er alle Probleme, die er vorher nicht hatte!
-
- Lazarusforum e. V.
- Beiträge: 7192
- Registriert: So 19. Nov 2006, 12:06
- OS, Lazarus, FPC: Linux Mint 19.3
- CPU-Target: AMD
- Wohnort: Oldenburg(Oldenburg)
Re: Wie kann ich ein Programm für jedermann kompilierbar machen?
Ich könnte mir eine Script Datei vorstellen, die dein Programm Automatisch für zwei Varianten Kompiliert : Einmal 32 Bit und einmal 64 Bit und eventuell auch noch für andere betriebsystem.
Weil nicht jeder kann ein Projekt Kompilieren. Ich habe bei manchen C++ Projekten Extreme sie zu Kompilieren, weil der Kompiliere X Fehler Meldungen schmeißt. Daher ist es wohl am einfachsten, wenn du bereist dein Projekt vorkompiliest und du könntest ja immer noch deine Source-Code Anbieten, für die Leute die es lieber Selbst Kompilieren wollen.
Ein Anders Problem ist ja nicht nur die LCL muss vorhanden sein auf dein Ziel System sondern auch alle anderen "Externen" Bibliotheken. Um Es einfacher zu machen: Nutzt am besten nicht die LCL. Dann wird es aber wieder Problematisch...
Weil nicht jeder kann ein Projekt Kompilieren. Ich habe bei manchen C++ Projekten Extreme sie zu Kompilieren, weil der Kompiliere X Fehler Meldungen schmeißt. Daher ist es wohl am einfachsten, wenn du bereist dein Projekt vorkompiliest und du könntest ja immer noch deine Source-Code Anbieten, für die Leute die es lieber Selbst Kompilieren wollen.
Ein Anders Problem ist ja nicht nur die LCL muss vorhanden sein auf dein Ziel System sondern auch alle anderen "Externen" Bibliotheken. Um Es einfacher zu machen: Nutzt am besten nicht die LCL. Dann wird es aber wieder Problematisch...
MFG
Michael Springwald
Michael Springwald
-
- Beiträge: 688
- Registriert: Mi 3. Okt 2007, 21:00
- OS, Lazarus, FPC: Linux (L 0.9.29 FPC 2.4.2)
- CPU-Target: x86_64
Re: Wie kann ich ein Programm für jedermann kompilierbar machen?
Bald gibt es was besseres für Linux: FatELF packt 64bit und 32bit ELFs in einer Datei zusammen. Biss die entsprechenden Patches im Kernel, Linker und diversen anderen Komponenten sind kann es aber noch dauern.
-
- Lazarusforum e. V.
- Beiträge: 7192
- Registriert: So 19. Nov 2006, 12:06
- OS, Lazarus, FPC: Linux Mint 19.3
- CPU-Target: AMD
- Wohnort: Oldenburg(Oldenburg)
Re: Wie kann ich ein Programm für jedermann kompilierbar machen?
und das wird auch von Windows unterstützt ?
MFG
Michael Springwald
Michael Springwald
-
- Beiträge: 688
- Registriert: Mi 3. Okt 2007, 21:00
- OS, Lazarus, FPC: Linux (L 0.9.29 FPC 2.4.2)
- CPU-Target: x86_64
Re: Wie kann ich ein Programm für jedermann kompilierbar machen?
Nein. Unter Windows muss man die Programme einzeln oder als .NET-Anwendungen abliefern. MacOS-X hat mit den "Universal-Binaries" etwas vergleichbares.
(Soviel allgemein zu portablen Anwendungen)
(Soviel allgemein zu portablen Anwendungen)
Re: Wie kann ich ein Programm für jedermann kompilierbar machen?
Ob das wirklich so eine gute Sache ist?Targion hat geschrieben:Bald gibt es was besseres für Linux
Das Ganze ist ja nicht rückwärtskompatibel und bewirkt grössere Programmdateien.
Ich sehe den Vorteil nicht wirklich.
-
- Lazarusforum e. V.
- Beiträge: 7192
- Registriert: So 19. Nov 2006, 12:06
- OS, Lazarus, FPC: Linux Mint 19.3
- CPU-Target: AMD
- Wohnort: Oldenburg(Oldenburg)
Re: Wie kann ich ein Programm für jedermann kompilierbar machen?
und du hast alles Doppelt und Dreifach. Eigentlich ist die Idee ja so ähnlich wie C-Shape oder .Net oder ?
MFG
Michael Springwald
Michael Springwald
-
- Beiträge: 462
- Registriert: Mi 30. Jul 2008, 13:11
- OS, Lazarus, FPC: WinXP SP3 (L 0.9.28.2 FPC 2.2.4)
- CPU-Target: 32Bit
- Kontaktdaten:
Re: Wie kann ich ein Programm für jedermann kompilierbar machen?
C-Shape sagt mir zwar gar nix, aber .Net ist doch, wenn ich das richtig verstanden habe, eher ein Framework, das von allen hardwarespezifischen Sachen abstrahieren soll (eher mit Java vergleichbar) und ein .Net-Programm nur vorkompiliert für das Framework. Bei der Ausführung wird der Code dann eher interpretiert (von Interpreter) als ausgeführt (Im Sinne einer exe). Die universal binaries enthalten dagegen doppelten ausführbaren Code, ohne dass dafür ein Interpreter benötigt würde.pluto hat geschrieben:Eigentlich ist die Idee ja so ähnlich wie C-Shape oder .Net oder ?
Seit er seinen neuen Computer hat, löst er alle Probleme, die er vorher nicht hatte!
-
- Beiträge: 688
- Registriert: Mi 3. Okt 2007, 21:00
- OS, Lazarus, FPC: Linux (L 0.9.29 FPC 2.4.2)
- CPU-Target: x86_64
Re: Wie kann ich ein Programm für jedermann kompilierbar machen?
.NET CLI-Code wird mit einem Just-in-time compiler kompiliert. (Wikipedia weiß mehr zum "Jittern") C# ist die Sprache von Microsaft für .NET und Mono. (Enthält elemente von Java, Delphi und C)
FatELF generiert wirklich relativ große binärdateien, der Nutzen der Sache liegt mehr beim Nutzer, der nicht mehr die richtige Datei für seine Plattform suchen muss. Die Sache ist Geschmackssache
FatELF generiert wirklich relativ große binärdateien, der Nutzen der Sache liegt mehr beim Nutzer, der nicht mehr die richtige Datei für seine Plattform suchen muss. Die Sache ist Geschmackssache

Re: Wie kann ich ein Programm für jedermann kompilierbar machen?
Naja, aber gerade unter Linux benutzt man doch entweder einen Paketmanager oder man "maked" die Software gleich selber.Targion hat geschrieben:der Nutzen der Sache liegt mehr beim Nutzer, der nicht mehr die richtige Datei für seine Plattform suchen muss.
In beiden Fällen nützt "die Sache" ja nix.
-
- Beiträge: 462
- Registriert: Mi 30. Jul 2008, 13:11
- OS, Lazarus, FPC: WinXP SP3 (L 0.9.28.2 FPC 2.2.4)
- CPU-Target: 32Bit
- Kontaktdaten:
Re: Wie kann ich ein Programm für jedermann kompilierbar machen?
Achso, C-Sharp war gemeint... dass das so viel mit .Net zu tun hat, wusste ich auch noch nicht, sonst wär ich wohl doch drauf gekommen 

Seit er seinen neuen Computer hat, löst er alle Probleme, die er vorher nicht hatte!
- af0815
- Lazarusforum e. V.
- Beiträge: 6859
- Registriert: So 7. Jan 2007, 10:20
- OS, Lazarus, FPC: FPC fixes Lazarus fixes per fpcupdeluxe (win,linux,raspi)
- CPU-Target: 32Bit (64Bit)
- Wohnort: Burgenland
- Kontaktdaten:
Re: Wie kann ich ein Programm für jedermann kompilierbar machen?
Nachdem ich den Thread verfolgt habe, folgende Frage:
So das Programm für jeden verwendbar sein (ausführbarer Code) oder wirklich für jeden kompilierbar (nur Sourcen) ?
So das Programm für jeden verwendbar sein (ausführbarer Code) oder wirklich für jeden kompilierbar (nur Sourcen) ?
Blöd kann man ruhig sein, nur zu Helfen muss man sich wissen (oder nachsehen in LazInfos/LazSnippets).
-
- Beiträge: 29
- Registriert: Mi 27. Mai 2009, 08:48
- OS, Lazarus, FPC: Linux (L 0.9.26.2-0 FPC 2.2.2)
- CPU-Target: 32Bit
Re: Wie kann ich ein Programm für jedermann kompilierbar machen?
So nochmal zu Infos:
Ich habe programmiert und wollte halt einem Freund oder mehreren das Programm geben, dann soll er am besten mit Doppelklick das Programm öffnen können. Ich habe hier ein 32-bit System und der andere entweder 64-bit oder 32-bit, aber beide Ubuntu Linux.
Ich hatte nämlich bei meinem 64-bit System mal Probleme gehabt, andere konnten die kompilierte Datei nicht öffnen.
Ich habe programmiert und wollte halt einem Freund oder mehreren das Programm geben, dann soll er am besten mit Doppelklick das Programm öffnen können. Ich habe hier ein 32-bit System und der andere entweder 64-bit oder 32-bit, aber beide Ubuntu Linux.

Ich hatte nämlich bei meinem 64-bit System mal Probleme gehabt, andere konnten die kompilierte Datei nicht öffnen.

-
- Beiträge: 688
- Registriert: Mi 3. Okt 2007, 21:00
- OS, Lazarus, FPC: Linux (L 0.9.29 FPC 2.4.2)
- CPU-Target: x86_64
Re: Wie kann ich ein Programm für jedermann kompilierbar machen?
=> DEB-Paket packen
=> IPK-Setup erstellen (hähä... Diese Lösung (noch) nicht ganz so ernst nehmen)
=> Mittels ldd die Abhängigkeiten rausfinden und die nötigen Pakete manuell installieren.
64bit binaries laufen generell nicht auf 32bit-Systemen, umgekerhrt aber schon.
=> IPK-Setup erstellen (hähä... Diese Lösung (noch) nicht ganz so ernst nehmen)
=> Mittels ldd die Abhängigkeiten rausfinden und die nötigen Pakete manuell installieren.
64bit binaries laufen generell nicht auf 32bit-Systemen, umgekerhrt aber schon.