programme starten

Antworten
hanibal
Beiträge: 369
Registriert: Sa 3. Mär 2007, 16:03
OS, Lazarus, FPC: Winux (L 0.9.xy FPC 2.2.z)
CPU-Target: xxBit
Wohnort: Bramsche (Emsland)

programme starten

Beitrag von hanibal »

kann ich Programme, die ich unter Ubuntu mit Lazarus kompiliert habe, auch an einem anderen PC, wohl möglich mit einer anderen Architektur mit anderer Distribution starten?

oder kann ich das überhaubt so wie bei Windows an jedem Computer starten?


phhh, ist das anstrengend, die ganzen Fehler zu berichtigen...

Benutzeravatar
af0815
Lazarusforum e. V.
Beiträge: 6768
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:

Beitrag von af0815 »

Linux -> Linux (andere Distribution) wird gehen, wenn die Bibliotheken gleich sind.

Linux -> Windows, nein, außer du hast es unter Linux für Windows kompiliert (Crosscompiling).

Generell andere Architektur nur als Crosscompiling !
phhh, ist das anstrengend, die ganzen Fehler zu berichtigen...
Nur so weiter, schaut ja ganz Manierlich aus.
Blöd kann man ruhig sein, nur zu Helfen muss man sich wissen (oder nachsehen in LazInfos/LazSnippets).

hanibal
Beiträge: 369
Registriert: Sa 3. Mär 2007, 16:03
OS, Lazarus, FPC: Winux (L 0.9.xy FPC 2.2.z)
CPU-Target: xxBit
Wohnort: Bramsche (Emsland)

Beitrag von hanibal »

Wenn ich das mit Crosscompiling kompiliere, kann ich das aber nicht unter meiner Architektur starten, oder?

Benutzeravatar
theo
Beiträge: 10869
Registriert: Mo 11. Sep 2006, 19:01

Beitrag von theo »

hanibal hat geschrieben:Wenn ich das mit Crosscompiling kompiliere, kann ich das aber nicht unter meiner Architektur starten, oder?
Mit wine wahrscheinlich schon.

Benutzeravatar
af0815
Lazarusforum e. V.
Beiträge: 6768
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:

Beitrag von af0815 »

Wenn ich das mit Crosscompiling kompiliere, kann ich das aber nicht unter meiner Architektur starten, oder?
Ist ja auch nicht der Sinn. Du kannst aber Dein Projekt mit etwas Aufwand so schreiben, das es auf deinen Plattformen läuft. Damit hast du ein Projekt, das nur mehrmals kompiliert werden muß. Braucht Übung, geht aber.
Blöd kann man ruhig sein, nur zu Helfen muss man sich wissen (oder nachsehen in LazInfos/LazSnippets).

hanibal
Beiträge: 369
Registriert: Sa 3. Mär 2007, 16:03
OS, Lazarus, FPC: Winux (L 0.9.xy FPC 2.2.z)
CPU-Target: xxBit
Wohnort: Bramsche (Emsland)

Beitrag von hanibal »

wie?

Also sozusagen plattformunabhängig, oder wie?
hä?

Euklid
Lazarusforum e. V.
Beiträge: 2808
Registriert: Fr 22. Sep 2006, 10:38
OS, Lazarus, FPC: Lazarus v2.0.10, FPC 3.2.0
Wohnort: Hessen
Kontaktdaten:

Beitrag von Euklid »

Eher gemäß dem Slogan "Write once and compile everywhere"

Sprich: Mit ein und dem selben Quelltext kannst du Binärdateien für viele Systeme und Architekturen erstellen.

Christian
Beiträge: 6079
Registriert: Do 21. Sep 2006, 07:51
OS, Lazarus, FPC: iWinux (L 1.x.xy FPC 2.y.z)
CPU-Target: AVR,ARM,x86(-64)
Wohnort: Dessau
Kontaktdaten:

Beitrag von Christian »

... was Euklid sagen will : plattformunabhängig ;)
W.m.k.A.h.e.m.F.h. -> http://www.gidf.de/

schnullerbacke
Beiträge: 1187
Registriert: Mi 13. Dez 2006, 10:58
OS, Lazarus, FPC: Winux (L 1.2.xy FPC 2.6.z)
CPU-Target: AMD A4-6400 APU
Wohnort: Hamburg

Beitrag von schnullerbacke »

@hanibal

Geh mal im Terminal in das Verzeichnis wo die ausführbare Datei liegt. Dann gibst du ein:

ldd {filename}

Dann zeigt er die Abhängigkeiten. Im Zweifel machste zur Weitergabe ein RPM's draus, geht mit "krpm" oder rpm.
Humor ist der Knopf, der verhindert, daß uns der Kragen platzt.

(Ringelnatz)

hanibal
Beiträge: 369
Registriert: Sa 3. Mär 2007, 16:03
OS, Lazarus, FPC: Winux (L 0.9.xy FPC 2.2.z)
CPU-Target: xxBit
Wohnort: Bramsche (Emsland)

Beitrag von hanibal »

da kommt dann das hier heraus:
martin@martin:~$ cd /media/hda8/sicherung/test/
martin@martin:/media/hda8/sicherung/test$ ldd project1
linux-gate.so.1 => (0xffffe000)
libpthread.so.0 => /lib/tls/i686/cmov/libpthread.so.0 (0xb7f8d000)
libglib-1.2.so.0 => /usr/lib/libglib-1.2.so.0 (0xb7f69000)
libgdk-1.2.so.0 => /usr/lib/libgdk-1.2.so.0 (0xb7f32000)
libX11.so.6 => /usr/lib/libX11.so.6 (0xb7e69000)
libgtk-1.2.so.0 => /usr/lib/libgtk-1.2.so.0 (0xb7d2e000)
libXi.so.6 => /usr/lib/libXi.so.6 (0xb7d26000)
libXext.so.6 => /usr/lib/libXext.so.6 (0xb7d19000)
libm.so.6 => /lib/tls/i686/cmov/libm.so.6 (0xb7cf3000)
libgdk_pixbuf.so.2 => /usr/lib/libgdk_pixbuf.so.2 (0xb7cdf000)
libdl.so.2 => /lib/tls/i686/cmov/libdl.so.2 (0xb7cda000)
libc.so.6 => /lib/tls/i686/cmov/libc.so.6 (0xb7ba6000)
/lib/ld-linux.so.2 (0xb7faf000)
libgmodule-1.2.so.0 => /usr/lib/libgmodule-1.2.so.0 (0xb7ba3000)
libXau.so.6 => /usr/lib/libXau.so.6 (0xb7ba0000)
libXdmcp.so.6 => /usr/lib/libXdmcp.so.6 (0xb7b9b000)
martin@martin:/media/hda8/sicherung/test$

schnullerbacke
Beiträge: 1187
Registriert: Mi 13. Dez 2006, 10:58
OS, Lazarus, FPC: Winux (L 1.2.xy FPC 2.6.z)
CPU-Target: AMD A4-6400 APU
Wohnort: Hamburg

Beitrag von schnullerbacke »

Die meisten sollten problemlos sein. libglib-1.2.so, libgdk-1.2.so, libgtk-1.2.so.0, libgdk_pixbuf.so.2, libgmodule-1.2.so.0 könnten auf dem Zielsystem Probleme machen.

Da kommste um RPM-Package oder ein DEB-Package nicht rum. "rpm" sorgt normal dafür, das die Abhängigkeiten eingetragen werden, für deb sollte das auch gelten.

Gib mal im Terminal:

man rpm

ein und guck dir die Parameter an. Das ist ne ganze Latte, davon braucht man aber i.d.R. um die 3-4 Stück.
Humor ist der Knopf, der verhindert, daß uns der Kragen platzt.

(Ringelnatz)

hanibal
Beiträge: 369
Registriert: Sa 3. Mär 2007, 16:03
OS, Lazarus, FPC: Winux (L 0.9.xy FPC 2.2.z)
CPU-Target: xxBit
Wohnort: Bramsche (Emsland)

Beitrag von hanibal »

wie macht man das, mit den abhängigkeinten, kann man wenn man n .deb macht das da irgendwie eintragen , oder wie? Hab sowas noch nie gemachjt. Installiert der das dann automatisch, wenn das da eingetragen ist?

schnullerbacke
Beiträge: 1187
Registriert: Mi 13. Dez 2006, 10:58
OS, Lazarus, FPC: Winux (L 1.2.xy FPC 2.6.z)
CPU-Target: AMD A4-6400 APU
Wohnort: Hamburg

Beitrag von schnullerbacke »

Also bei rpm dürfte das etwa so aussehen:

rpm -c -deps {filename} {targetfilename}

für Debian-Packages gibt es etwas ähnliches, mal googeln.
Humor ist der Knopf, der verhindert, daß uns der Kragen platzt.

(Ringelnatz)

hanibal
Beiträge: 369
Registriert: Sa 3. Mär 2007, 16:03
OS, Lazarus, FPC: Winux (L 0.9.xy FPC 2.2.z)
CPU-Target: xxBit
Wohnort: Bramsche (Emsland)

Beitrag von hanibal »

mach ich später mal, had da gerade keine lust zu mich da durch zu googlen.

Antworten