Portabilität von Programmen

In dieser Linux-Ecke dürfen nur Themen rund um Linux geschrieben werden.
Beiträge, die plattformübergreifend sind, gehören ins 'Allgemein'-Forum.
Benutzeravatar
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

Beitrag von PIC18F2550 »

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.
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
Benutzeravatar
Macros
Beiträge: 1361
Registriert: 23.12.2005 15:00
Wohnort: Olching(bei FFB)
Kontaktdaten:

Re: Portabilität von Programmen

Beitrag von Macros »

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.
Bild
Benutzeravatar
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

Beitrag von PIC18F2550 »

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.
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
Benutzeravatar
mk-soft
Beiträge: 3855
Registriert: 24.11.2004 13:12
Wohnort: Germany

Re: Portabilität von Programmen

Beitrag von mk-soft »

Du kannst abfrage was verwendet wird

Im Terminal:
ldd DeinProgram
Mit allen Infos
ldd -v DeinProgram
Alles ist möglich, fragt sich nur wie...
Projekte ThreadToGUI / EventDesigner V3 / OOP-BaseClass-Modul
Downloads auf MyWebspace / OneDrive
Antworten