Hallo,
ich möchte auf einem Rechner z.B. Mint ein Konsolenprogramm erstellen und es auf einen anderen z.B. IPFiere ausführen.
Was muss ich alles beachten.
Danke.
Portabilität von Programmen
- PIC18F2550
- Beiträge: 104
- Registriert: 29.04.2024 09:10
- Computerausstattung: Server HP Proliant G7
PC AMD FX(tm)-9590, 64Gb Ram, 2x 2TB Raid5 SAS
Portabilität von Programmen
Barbarus hic ergo sum, quia non intellegor ulli.
Ein Barbar bin ich hier, da ich von keinem verstanden werde.
ʎɐqǝ ıǝq ɹnʇɐʇsɐʇ ǝuıǝ ɹǝpǝıʍ ǝıu ǝɟnɐʞ ɥɔı ´uuɐɯ ɥo
Ein Barbar bin ich hier, da ich von keinem verstanden werde.
ʎɐqǝ ıǝq ɹnʇɐʇsɐʇ ǝuıǝ ɹǝpǝıʍ ǝıu ǝɟnɐʞ ɥɔı ´uuɐɯ ɥo
Re: Portabilität von Programmen
Generell, wenn beide das gleiche Betriebssystem verwenden geht das ganz problemlos.
Sonst:
Je mehr Bibliotheken du verwendest, desto höher ist die Wahrscheinlichkeit, dass du auch auf dem anderen Rechner welche nachinstallieren musst.
(Du kannst auch ein Paket basteln, dass dann dein Programm installiert und von den Bibliotheken abhängt)
Beim Start zeigt dir das Programm in der Konsole auch genau welche Bibliothek fehlt.
Unter Mint könntest du das zugehörige Paket z.B. mit "apt-file search {bibliothekname}" finden und installieren. Bei IPFire kenne ich mich nicht aus, ob es einen ähnlichen Befehl gibt.
Bei gleichem Unterbau geht es meiner Erfahrung nach auch gut. Idealerweise ist dabei das "bauende" System das ältere (oder identisch alt), sonst wird dein Programm gegen die neuen Versionen von Bibliotheken verlinkt, die beim anderen System vielleicht gar nicht zur Verfügung stehen. Z.B. für Ubuntu baue ich offizielle Programme für die vorletzte LTS Version, baue dann ein deb-Paket und das läuft dann auf allen aktuellen Ubuntu-Versionen.
Essentiell ist die gleiche Architektur, also wenn Rechner A x64 verwendet, muss das auch Rechner B das tun. (x86 ist manchmal auf x64 lauffähig, aber teils wird das auch nicht mehr unterstützt)
Da du ein Konsolenprogramm erstellen willst, sollten die Abhängigkeiten wenige sein.
Sonst:
Je mehr Bibliotheken du verwendest, desto höher ist die Wahrscheinlichkeit, dass du auch auf dem anderen Rechner welche nachinstallieren musst.
(Du kannst auch ein Paket basteln, dass dann dein Programm installiert und von den Bibliotheken abhängt)
Beim Start zeigt dir das Programm in der Konsole auch genau welche Bibliothek fehlt.
Unter Mint könntest du das zugehörige Paket z.B. mit "apt-file search {bibliothekname}" finden und installieren. Bei IPFire kenne ich mich nicht aus, ob es einen ähnlichen Befehl gibt.
Bei gleichem Unterbau geht es meiner Erfahrung nach auch gut. Idealerweise ist dabei das "bauende" System das ältere (oder identisch alt), sonst wird dein Programm gegen die neuen Versionen von Bibliotheken verlinkt, die beim anderen System vielleicht gar nicht zur Verfügung stehen. Z.B. für Ubuntu baue ich offizielle Programme für die vorletzte LTS Version, baue dann ein deb-Paket und das läuft dann auf allen aktuellen Ubuntu-Versionen.
Essentiell ist die gleiche Architektur, also wenn Rechner A x64 verwendet, muss das auch Rechner B das tun. (x86 ist manchmal auf x64 lauffähig, aber teils wird das auch nicht mehr unterstützt)
Da du ein Konsolenprogramm erstellen willst, sollten die Abhängigkeiten wenige sein.

- PIC18F2550
- Beiträge: 104
- Registriert: 29.04.2024 09:10
- Computerausstattung: Server HP Proliant G7
PC AMD FX(tm)-9590, 64Gb Ram, 2x 2TB Raid5 SAS
Re: Portabilität von Programmen
Beide Systeme sind x64.
Worauf greift ein Konsolenprogramm hauptsächlich zu, Kernelfunktionen?
Verwenden möchte ich:
Dateien/Verzeichnisse auf einen Samba Server lesen.
Dateien/Verzeichnisse auf einen FTP Server schreiben/überschreiben.
Statusmeldungen auf Konsole ausgeben. Keine Eingaben.
Worauf greift ein Konsolenprogramm hauptsächlich zu, Kernelfunktionen?
Verwenden möchte ich:
Dateien/Verzeichnisse auf einen Samba Server lesen.
Dateien/Verzeichnisse auf einen FTP Server schreiben/überschreiben.
Statusmeldungen auf Konsole ausgeben. Keine Eingaben.
Barbarus hic ergo sum, quia non intellegor ulli.
Ein Barbar bin ich hier, da ich von keinem verstanden werde.
ʎɐqǝ ıǝq ɹnʇɐʇsɐʇ ǝuıǝ ɹǝpǝıʍ ǝıu ǝɟnɐʞ ɥɔı ´uuɐɯ ɥo
Ein Barbar bin ich hier, da ich von keinem verstanden werde.
ʎɐqǝ ıǝq ɹnʇɐʇsɐʇ ǝuıǝ ɹǝpǝıʍ ǝıu ǝɟnɐʞ ɥɔı ´uuɐɯ ɥo
Re: Portabilität von Programmen
Du kannst abfrage was verwendet wird
Im Terminal:
Im Terminal:
Mit allen Infosldd DeinProgram
ldd -v DeinProgram
Alles ist möglich, fragt sich nur wie...
Projekte ThreadToGUI / EventDesigner V3 / OOP-BaseClass-Modul
Downloads auf MyWebspace / OneDrive
Projekte ThreadToGUI / EventDesigner V3 / OOP-BaseClass-Modul
Downloads auf MyWebspace / OneDrive