Programm läuft mit neuer Linux Version nicht
Programm läuft mit neuer Linux Version nicht
Hallo,
vor Jahren habe ich das Programm "MyMemoryDB" programmiert und seit Jahren arbeite ich eigentlich täglich mit diesem Programm, allerdings auf einer recht alten Linux Version:
Linux Mint 19 Tara
Allmählich wird es aber Zeit, auf eine neuere Linux-Version umzusteigen, weil u.a. der installierte Firefox nicht mehr alle moderneren Web-Seiten korrekt anzeigt.
Ich habe nun auf einem Laptop das Programm:
Ubuntu 22.04.3 LTS (jammi)
installiert. (u.a. per Download über den unten gezeigten Link, bzw. auch per Kopie aus dem alten System: Linux Mint 19 Tara)
Seltsamerweise läuft mein Programm MyMemoryDB nun nicht mehr, es startet nicht, obwohl alle Berechtigungen frei gegeben sind und das Programm "Ausführbar" lt. angewähltem Kästchen sein sollte.
Woran kann das liegen?
Aliobaba
MyMemoryDB ist hier abrufbar:
https://www.heise.de/download/product/mymemorydb-89626
vor Jahren habe ich das Programm "MyMemoryDB" programmiert und seit Jahren arbeite ich eigentlich täglich mit diesem Programm, allerdings auf einer recht alten Linux Version:
Linux Mint 19 Tara
Allmählich wird es aber Zeit, auf eine neuere Linux-Version umzusteigen, weil u.a. der installierte Firefox nicht mehr alle moderneren Web-Seiten korrekt anzeigt.
Ich habe nun auf einem Laptop das Programm:
Ubuntu 22.04.3 LTS (jammi)
installiert. (u.a. per Download über den unten gezeigten Link, bzw. auch per Kopie aus dem alten System: Linux Mint 19 Tara)
Seltsamerweise läuft mein Programm MyMemoryDB nun nicht mehr, es startet nicht, obwohl alle Berechtigungen frei gegeben sind und das Programm "Ausführbar" lt. angewähltem Kästchen sein sollte.
Woran kann das liegen?
Aliobaba
MyMemoryDB ist hier abrufbar:
https://www.heise.de/download/product/mymemorydb-89626
"MyMemoryDB" ( https://www.heise.de/download/product/mymemorydb-89626 )
- kralle
- Lazarusforum e. V.
- Beiträge: 938
- Registriert: Mi 17. Mär 2010, 14:50
- OS, Lazarus, FPC: Linux Mint 20 , FPC 3.3.1 , Lazarus 2.1.0 -Win10 & XE7Pro
- CPU-Target: 64Bit
- Wohnort: Bremerhaven
- Kontaktdaten:
Re: Programm läuft mit neuer Linux Version nicht
Moin,
Nur so eine Idee:
Von Mint 19 zu Mint 20 sind Systempfade geändert worden. Konnte mein Lazarus-Install-Script plötzlich auch nicht mehr benuzten. Hast Du absolute Pfade im Code? Vielleicht Lazarus auf dem neuen Linux installieren und das Projekt neu kompilieren.
Gruß Heiko
Nur so eine Idee:
Von Mint 19 zu Mint 20 sind Systempfade geändert worden. Konnte mein Lazarus-Install-Script plötzlich auch nicht mehr benuzten. Hast Du absolute Pfade im Code? Vielleicht Lazarus auf dem neuen Linux installieren und das Projekt neu kompilieren.
Gruß Heiko
OS: Manjaro Linux, Debian und Windows 10
FPC-Version: 3.3.1 , Lazarus 2.3.0
+ Delphi XE7SP1
FPC-Version: 3.3.1 , Lazarus 2.3.0
+ Delphi XE7SP1
- af0815
- Lazarusforum e. V.
- Beiträge: 6118
- 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: Programm läuft mit neuer Linux Version nicht
Es gibt im englischen Forum eine laaaaange Diskussion, das sich die libc in der Version geändert hat und deswegen es Probleme mit neu kompilierten Programmen unter älteren Linuxen gibt.
Kurz gefasst: Wir das Programm unter einer ältreren Linux Version erstellt, so läuft es überall, umgekehrt nicht.
---------
Wenn ein Linux Programm auf einer anderen Maschine nicht startet, so sollte man einemal prüfen ob die richtigen Bibliotheken wirklich vorhanden sind (mit allen Abhängigkeiten). Leider werden die Pakete von verschiedenen Distributionen unterschiedlich gepackt und auch mit verschiedenen Abhängigkeiten versehen. Auch bei Zeos sollte man aktualisieren, weil durch die neuen Versionen in den Distributionen ein Update nötig war (Soweit ich das mitverfolgt habe).
----------
Spuckt die Kommandozeile informationen aus, wenn du das Programm von dort aus startest ?
Kurz gefasst: Wir das Programm unter einer ältreren Linux Version erstellt, so läuft es überall, umgekehrt nicht.
---------
Wenn ein Linux Programm auf einer anderen Maschine nicht startet, so sollte man einemal prüfen ob die richtigen Bibliotheken wirklich vorhanden sind (mit allen Abhängigkeiten). Leider werden die Pakete von verschiedenen Distributionen unterschiedlich gepackt und auch mit verschiedenen Abhängigkeiten versehen. Auch bei Zeos sollte man aktualisieren, weil durch die neuen Versionen in den Distributionen ein Update nötig war (Soweit ich das mitverfolgt habe).
----------
Spuckt die Kommandozeile informationen aus, wenn du das Programm von dort aus startest ?
Blöd kann man ruhig sein, nur zu Helfen muss man sich wissen (oder nachsehen in LazInfos/LazSnippets).
-
- Beiträge: 5935
- Registriert: Do 2. Jan 2014, 17:21
- OS, Lazarus, FPC: Linux (die neusten Trunc)
- CPU-Target: 64Bit
- Wohnort: Schweiz
Re: Programm läuft mit neuer Linux Version nicht
Vieles wurde von "/" ind "/usr" verschoben.Von Mint 19 zu Mint 20 sind Systempfade geändert worden.
Dies sieht man hier gut:
Code: Alles auswählen
$ ls -l
insgesamt 2097232
lrwxrwxrwx 1 root root 7 Jul 4 14:29 bin -> usr/bin
drwxr-xr-x 4 root root 4096 Aug 5 13:32 boot
drwxr-xr-x 2 root root 4096 Jul 4 14:31 cdrom
drwxr-xr-x 22 root root 5060 Aug 7 08:26 dev
drwxr-xr-x 153 root root 12288 Aug 6 14:18 etc
drwxr-xr-x 3 root root 4096 Jul 4 14:31 home
lrwxrwxrwx 1 root root 7 Jul 4 14:29 lib -> usr/lib
lrwxrwxrwx 1 root root 9 Jul 4 14:29 lib32 -> usr/lib32
lrwxrwxrwx 1 root root 9 Jul 4 14:29 lib64 -> usr/lib64
lrwxrwxrwx 1 root root 10 Jul 4 14:29 libx32 -> usr/libx32
drwx------ 2 root root 16384 Jul 4 14:29 lost+found
drwxr-xr-x 3 root root 4096 Jul 4 14:33 media
drwxr-xr-x 2 root root 4096 Jun 14 11:49 mnt
drwxr-xr-x 5 root root 4096 Aug 4 14:58 opt
dr-xr-xr-x 474 root root 0 Aug 7 08:26 proc
drwx------ 9 root root 4096 Jul 25 08:58 root
drwxr-xr-x 39 root root 1100 Aug 7 08:26 run
lrwxrwxrwx 1 root root 8 Jul 4 14:29 sbin -> usr/sbin
drwxr-xr-x 2 root root 4096 Jun 14 11:49 srv
-rw------- 1 root root 2147483648 Jul 4 14:29 swapfile
dr-xr-xr-x 13 root root 0 Aug 7 08:26 sys
drwxrwxrwt 18 root root 4096 Aug 7 09:07 tmp
drwxr-xr-x 14 root root 4096 Jun 14 11:49 usr
drwxr-xr-x 11 root root 4096 Jun 14 12:29 var
Mit Lazarus sehe ich grün
Mit Java und C/C++ sehe ich rot
Mit Java und C/C++ sehe ich rot
Re: Programm läuft mit neuer Linux Version nicht
Wie schon gesagt, ich habe schon lange nichts mehr mit "Lazarus" gemacht.
Ich habe jetzt die Programmumgebung erstmal auf dem neuen Rechner installiert. Und da habe ich schon mal regelmäßig Probleme, diese unter Linux zum Laufen zu bekommen, was mir aktuell bis jetzt auch noch nicht gelungen ist. Aber das ist ein anderes Thema und hängt sicher mit meinem mangelnden Wissen zusammen: Irgendwelche Abhängigkeiten sind nicht gelöst ...
.
Daraufhin habe ich es auf Windows 10 installiert (ohne Probleme).
Aber ich war entsetzt, wie mein Programm in kompilierter Form nun aussieht. Die Größen der einzelnen Objekte (Buttons, Textfelder) haben sich im Verhältnis der Größen zueinander verändert und so sieht die Programmoberfläche furchtbar aus! Seltsamerweise sind diese Objektgrößen auf der Programmieroberfläche noch völlig in Ordnung, im kompilierten Programm aber passen die Größen von einzelnen Objekten nicht mehr zueinander.
Na, ja. Ich muss mich wohl damit abfinden, dass Lazarus nur etwas für wirkliche Spezialisten ist.
Man muss (und kann) im Leben eben nicht alles verstehen. Sorry, dass ich so negativ bin; halt einfach frustriert
Viele Grüße!
Alfons
Ich habe jetzt die Programmumgebung erstmal auf dem neuen Rechner installiert. Und da habe ich schon mal regelmäßig Probleme, diese unter Linux zum Laufen zu bekommen, was mir aktuell bis jetzt auch noch nicht gelungen ist. Aber das ist ein anderes Thema und hängt sicher mit meinem mangelnden Wissen zusammen: Irgendwelche Abhängigkeiten sind nicht gelöst ...

Daraufhin habe ich es auf Windows 10 installiert (ohne Probleme).
Aber ich war entsetzt, wie mein Programm in kompilierter Form nun aussieht. Die Größen der einzelnen Objekte (Buttons, Textfelder) haben sich im Verhältnis der Größen zueinander verändert und so sieht die Programmoberfläche furchtbar aus! Seltsamerweise sind diese Objektgrößen auf der Programmieroberfläche noch völlig in Ordnung, im kompilierten Programm aber passen die Größen von einzelnen Objekten nicht mehr zueinander.
Na, ja. Ich muss mich wohl damit abfinden, dass Lazarus nur etwas für wirkliche Spezialisten ist.
Man muss (und kann) im Leben eben nicht alles verstehen. Sorry, dass ich so negativ bin; halt einfach frustriert

Viele Grüße!
Alfons
"MyMemoryDB" ( https://www.heise.de/download/product/mymemorydb-89626 )
-
- Beiträge: 813
- Registriert: Sa 12. Sep 2015, 12:10
- OS, Lazarus, FPC: Laz 2.2.6
- CPU-Target: Win 32/64, Linux64
- Wohnort: Wien
Re: Programm läuft mit neuer Linux Version nicht
Ich verstehe dass du frustriert bist -- Lazarus hat damit wohl wenig zu tun, könnte aber die Lösung sein.
Du sagst, du hast "schon lange" nichts mehr mit Lazarus gemacht.
Dazwischen vielleicht einen neuen Monitor bekommen? Neuen Rechner?
Mit welcher Version von Lazarus hast du denn noch "etwas getan"?
Du steckst gerade in der Falle von RAD (Rapid Application Development). Unabhängig von Lazarus. Grafische Entwicklungsumgebungen abstrahieren die Komplexität der eigentlichen Programmierung und nehmen dem Entwickler eine Menge Arbeit ab. Das heißt aber nicht dass die Komplexität der Umgebung immer mit berücksichtigt werden kann.
Ändert sich die Umgebung (OS, Monitor, Auflösung etc) und das Programm ist nicht darauf vorbereitet (konnte es vielleicht auch mangels Glaskugel nicht sein), kommt es zu solchen Ergebnissen/Auswirkungen.
Aber das ist lösbar.
Re: Programm läuft mit neuer Linux Version nicht
Danke, Charlytango für Deine tröstenden Worte.
Klar, das wird schon wieder; und klar, das ist lösbar, vor allen Dingen, weil so viele engagierte Leute in diesem Forum so geduldig und hilfsbereit sind.
(Deshalb will ich ja ganz gerne mal bei einem Treffen vorbei schauen; aber ich denke, ich würde wenig von Euren Gesprächen verstehen und mich blamieren - aber sicher sehr nette Leute kennen lernen. Und wegen des tollen Engagements vieler Leute hier für das Forum bin ich ja auch Forum-Mitglied [und nicht weil ich so ein genialer Programmierer bin!])
Aber das Finden der Lösungen kostet eben unglaublich viel Zeit, wenn einem das notwendige Wissens-Fundament fehlt. Aber man lernt dabei natürlich, wenn auch oft mit sehr welliger und flacher Lernkurve.
Ja, es ist ein neuer Rechner, nun ein Laptop mit rel. hoher Auflösung - - - und genau jetzt, wo ich das schreibe, habe ich - glaube ich - die Lösung
-> Ich hatte auf dem PC die Auflösung 1920 * 1200; beim Laptop habe ich die "empfohlene" Auflösung von 2560 * 1440 eingestellt, ABER dann - wegen der sehr kleinen Darstellung - auf 150% skaliert.
Bei einer Skalierung von 100% stimmen die Größenverhältnisse wieder
Klar, das wird schon wieder; und klar, das ist lösbar, vor allen Dingen, weil so viele engagierte Leute in diesem Forum so geduldig und hilfsbereit sind.
(Deshalb will ich ja ganz gerne mal bei einem Treffen vorbei schauen; aber ich denke, ich würde wenig von Euren Gesprächen verstehen und mich blamieren - aber sicher sehr nette Leute kennen lernen. Und wegen des tollen Engagements vieler Leute hier für das Forum bin ich ja auch Forum-Mitglied [und nicht weil ich so ein genialer Programmierer bin!])
Aber das Finden der Lösungen kostet eben unglaublich viel Zeit, wenn einem das notwendige Wissens-Fundament fehlt. Aber man lernt dabei natürlich, wenn auch oft mit sehr welliger und flacher Lernkurve.
Ja, es ist ein neuer Rechner, nun ein Laptop mit rel. hoher Auflösung - - - und genau jetzt, wo ich das schreibe, habe ich - glaube ich - die Lösung

-> Ich hatte auf dem PC die Auflösung 1920 * 1200; beim Laptop habe ich die "empfohlene" Auflösung von 2560 * 1440 eingestellt, ABER dann - wegen der sehr kleinen Darstellung - auf 150% skaliert.
Bei einer Skalierung von 100% stimmen die Größenverhältnisse wieder

"MyMemoryDB" ( https://www.heise.de/download/product/mymemorydb-89626 )
Re: Programm läuft mit neuer Linux Version nicht
... und nun muss ich Lazarus nur noch dazu bringen, auch unter Linux (Kubuntu) zu laufen...
Aber das wird auch
Aber das wird auch

"MyMemoryDB" ( https://www.heise.de/download/product/mymemorydb-89626 )
Re: Programm läuft mit neuer Linux Version nicht
Nachdem das ein Projekt ist, das mit einer "alten" Lazarus-Version erstellt wurde, ist wahrscheinlich das Häkchen in den Projekt-Optionen bei "LCL-Skalierung verwenden" nicht gesetzt. Setze das, und falls du auf Windows wärst, solltest du auch "Manifest-Ressource verwenden" markieren und unter "DPI-Anpassung" eine der "an"-Einstellungen wählen. Damit sollte die Darstellung mit der Auflösung sklaieren.Aliobaba hat geschrieben: ↑Mo 7. Aug 2023, 11:07Ja, es ist ein neuer Rechner, nun ein Laptop mit rel. hoher Auflösung - - - und genau jetzt, wo ich das schreibe, habe ich - glaube ich - die Lösung![]()
-> Ich hatte auf dem PC die Auflösung 1920 * 1200; beim Laptop habe ich die "empfohlene" Auflösung von 2560 * 1440 eingestellt, ABER dann - wegen der sehr kleinen Darstellung - auf 150% skaliert.
Bei einer Skalierung von 100% stimmen die Größenverhältnisse wieder![]()
Re: Programm läuft mit neuer Linux Version nicht
Warum machst du das nicht einfach über z.B. Discover?
Da sollten erst einmal alle Abhängigkeiten mitkommen, auch wenn du nachher z.B. mit FPCUPdeluxe installieren möchtest.
- Dateianhänge
-
- laz_kubuntu2.png (122.31 KiB) 745 mal betrachtet
Re: Programm läuft mit neuer Linux Version nicht
Weil bei meinem "Glück" selbst das nicht funktioniert

Da kommt bei mir: Can't find the lazarus executable /usr/lib/lazarus/2.2.0/lazarus

"MyMemoryDB" ( https://www.heise.de/download/product/mymemorydb-89626 )
Re: Programm läuft mit neuer Linux Version nicht
Du musst schon etwas präziser werden.
Wann "kommt" das?
Gibt es "/usr/lib/lazarus/" überhaupt?
Sind wenigstens die Abhängigkeiten jetzt installiert? (Z.B. "Show Dependencies" bei Discover -> Lazarus).
Ein bisschen "Bock" auf's Tüfteln gehört zum programmieren schon auch dazu.

-
- Beiträge: 813
- Registriert: Sa 12. Sep 2015, 12:10
- OS, Lazarus, FPC: Laz 2.2.6
- CPU-Target: Win 32/64, Linux64
- Wohnort: Wien
Re: Programm läuft mit neuer Linux Version nicht
Meine Empfehlung:
Verwende keine Installationspakete jeglicher Herkunft. Wenn du wissen willst warum schau in die Foren, da gibt es immer wieder Probleme damit besonders unter Linux (unterschiedliche -- und seien es nur alte Versionen)
Benutzer fpcupdeluxe zur Installation, damit bekomme ich als Nicht-Linuxer auch eine funktionierende Lazarus installation ohne große Probleme hin.
Vorteile: aktuelle und auch alte Versionen zur Auswahl. (Du kannst den alten Zustand deiner Entwicklungsumgebung wieder herstellen) Und parallel dazu eine neue Installation machen (das geht mit fpcupdeluxe leicht, weil alles unabhängig vom OS in einem Ordner ist)
Bei Youtube gibt es dazu auch Anleitungen, dann geht es noch einfacher.
https://www.youtube.com/watch?v=Snf0xgdREOQ&t=283s
Re: Programm läuft mit neuer Linux Version nicht
Normalerweise schon, aber er beklagt ja die Abhängigkeiten:charlytango hat geschrieben: ↑Mo 7. Aug 2023, 12:18Meine Empfehlung:
Verwende keine Installationspakete jeglicher Herkunft. Wenn du wissen willst warum schau in die Foren, da gibt es immer wieder Probleme damit besonders unter Linux (unterschiedliche -- und seien es nur alte Versionen)
Benutzer fpcupdeluxe zur Installation, damit bekomme ich als Nicht-Linuxer auch eine funktionierende Lazarus installation ohne große Probleme hin.
Und da hilft dir fpcupdeluxe nicht wirklich.
-
- Beiträge: 574
- Registriert: Sa 22. Okt 2016, 23:12
- OS, Lazarus, FPC: W10, L 2.2.6
- CPU-Target: 32+64bit
- Wohnort: Dresden
Re: Programm läuft mit neuer Linux Version nicht
Hast du schon mal im Terminal ein:
gemacht?sudo apt-get -f install
LG Maik
Windows 10,
- Lazarus 2.2.6 (stable) + fpc 3.2.2 (stable)
- Lazarus 2.2.7 (fixes) + fpc 3.3.1 (main/trunk)
Windows 10,
- Lazarus 2.2.6 (stable) + fpc 3.2.2 (stable)
- Lazarus 2.2.7 (fixes) + fpc 3.3.1 (main/trunk)