Prog kann bei einem anderen nicht gestartet werden (Linux)

Für allgemeine Fragen zur Programmierung, welche nicht! direkt mit Lazarus zu tun haben.
Antworten
Ati
Beiträge: 27
Registriert: Di 12. Sep 2006, 12:51
OS, Lazarus, FPC: Winux (L 0.9.xy FPC 2.2.z)
CPU-Target: xxBit
Wohnort: Gelsenkirchen

Prog kann bei einem anderen nicht gestartet werden (Linux)

Beitrag von Ati »

Hallo zusammen,

als Erstlingswerk unter Linux wollte ich jetzt ein Prog schreiben, welches einige System und Benutzerinfo´ s anzeigt. Habe das dann einem Bekannten geschickt der sollte mal testen...wirklich erstmal nur ganz wenig. Dieser schreibt mir dann über irc das er es nicht starten konnte. Hier mal seine Fehlermeldung:" ./sysinfo: error while loading shared libraries: libgdk_pixbuf.so.2: cannot open shared object file: No such file or directory". Wie kann ich solche Probleme umgehen. Sind da Einstellungen beim kompilieren möglich/nötig. Wie gesagt es ist mein Erstlingswerk unter Linux.

Danke im voraus
Ati

monta
Lazarusforum e. V.
Beiträge: 2809
Registriert: Sa 9. Sep 2006, 18:05
OS, Lazarus, FPC: Linux (L trunk FPC trunk)
CPU-Target: 64Bit
Wohnort: Dresden
Kontaktdaten:

Beitrag von monta »

Also ich als nicht wirklich Linux Kenner würde ja mal sagen, das die entsprechende librarie einfach bei seinem System nicht vorhanden ist, was ja auf die Meldung No Such file... passen würde.
Wenn dem so ist, müsste er wohl die librarie installieren bzw. du kannst sie direkt mit dem Prog weitergeben. (?)

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 »

libgtkpixbuf fehlt auf dem anderen system steht doch alles da
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 »

Anzuraten ist bei Linux grundsätzlich ein:

ldd prgfilename

als Ausgabe erhälst du dann alle benötigten librarys die du bei der Weitergabe der Anwendung mit einbinden solltest. libgdk_pixbuf.so.2 ist z.B. bei SuSE nicht zwingend dabei, eventuell ab 10.1 nichtmal in der Distri vorhanden. Nachdem ldd empfiehlt sich dann ein RPM zu erstellen und die abhängingen libs dort anzugeben. Die gängigen Install-Tools (yum, apt, yast) werden dann beim installieren die notwendigen Pakete selbst suchen und nachinstallieren.

Dein Bekannter kann aber erstmal das Paket gdk-pixbuf nachinstallieren, dann sollte das behoben sein. Kann natürlich sein, das sich weitere Abhängigkeiten ergeben.
Humor ist der Knopf, der verhindert, daß uns der Kragen platzt.

(Ringelnatz)

Ati
Beiträge: 27
Registriert: Di 12. Sep 2006, 12:51
OS, Lazarus, FPC: Winux (L 0.9.xy FPC 2.2.z)
CPU-Target: xxBit
Wohnort: Gelsenkirchen

Beitrag von Ati »

Tja der Kollege hat mal installiert und schon funktionierte es. Hatte mich nur gewundert das bei zwi Kollegen die gleiche Fehlermeldung erschien.

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 »

Hallo Ati!

Dein Programm funktioniert auch ohne die Installation der pixbuf, wenn du es für die LCL-Schnittstelle gtk2 kompilierst.

Denn die Bibliotheken der gtk2 sind standardmäßig auf jedem System vorhanden.

Die entsprechende Einstellung kannst du unter "Projekt" -> "Compiler-Einstellungen" -> "Pfade" -> "LCL-Schnittstelle"
vornehmen.

Das Design sieht für meinen Geschmack generell besser mit der gtk2 aus als mit der gtk. Nur ist die gtk2 wohl noch nicht vollständig implementiert, das meiste läuft aber.

Viele Grüße, Euklid

pluto
Lazarusforum e. V.
Beiträge: 7178
Registriert: So 19. Nov 2006, 12:06
OS, Lazarus, FPC: Linux Mint 19.3
CPU-Target: AMD
Wohnort: Oldenburg(Oldenburg)

Beitrag von pluto »

ich habe es mal bei mir umgstellt auf gtk2 und der kompliert meckert:
/usr/bin/ld: cannot find -lgdk-x11-2.0
ich vermute das es ein packet oder ein irgeneine andre datei das ich noch installieren muss !
MFG
Michael Springwald

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 »

pluto hat geschrieben:ich habe es mal bei mir umgstellt auf gtk2 und der kompliert meckert:
/usr/bin/ld: cannot find -lgdk-x11-2.0
ich vermute das es ein packet oder ein irgeneine andre datei das ich noch installieren muss !


Ich kann zumindest sagen:

1. Unter SuSE 10.0 mit Lazarus 0.9.20 lassen sich gtk2-Programme auch OHNE Installation zusätzlicher Komponenten kompilieren.

2. gtk2-Programme lassen sich des Weiteren OHNE Installation zusätzlicher Pakete mindestens unter SuSE, Kubuntu, Damm Small Linux und Puppy ausführen. Andere habe ich noch nicht getestet.

pluto
Lazarusforum e. V.
Beiträge: 7178
Registriert: So 19. Nov 2006, 12:06
OS, Lazarus, FPC: Linux Mint 19.3
CPU-Target: AMD
Wohnort: Oldenburg(Oldenburg)

Beitrag von pluto »

nicht schlecht, dann hat es anscheidn nur bei mir unter uBuntu probleme !
naja währe auch zu schön gewesen :(
MFG
Michael Springwald

Ati
Beiträge: 27
Registriert: Di 12. Sep 2006, 12:51
OS, Lazarus, FPC: Winux (L 0.9.xy FPC 2.2.z)
CPU-Target: xxBit
Wohnort: Gelsenkirchen

Beitrag von Ati »

Danke Euklid,

das war genau der Tip den ich brauchte. Umgestellt auf gtk2-> neu kompiliert-> kollege gegeben-> und funktioniert ohne zusätzliche Installationen.
@pluto ich hatte aber keine Probleme unter Ubuntu

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 »

1. würde ich davon abraten die gtk2 schnittstelle zu benutzen da sie noch ser unstabil ist an irgendeiner stelle sucht ihr euch nach fehlern dumm und dämlich

2. kann ich mir nicht vorstellen das die gtk2 development bibliotheken unter suse standartmässig installiert werden das wär ganz schön schwachsinnig @pluto die musst du installiern um gtk2 programme zu erstellen also einfach im synaptik nach libgtk2 suchen und die pakete mit -dev installieren
W.m.k.A.h.e.m.F.h. -> http://www.gidf.de/

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 »

Christian hat geschrieben:2. kann ich mir nicht vorstellen das die gtk2 development bibliotheken unter suse standartmässig installiert werden das wär ganz schön schwachsinnig


Ich kann dazu nur sagen, dass das Kompilieren für gtk2 ohne Zusatzpakete funktionierte...

.. wiso wäre das Schwachsinn?

bike
Beiträge: 25
Registriert: Mi 22. Nov 2006, 12:01

Beitrag von bike »

Christian hat geschrieben:1. würde ich davon abraten die gtk2 schnittstelle zu benutzen da sie noch ser unstabil ist an irgendeiner stelle sucht ihr euch nach fehlern dumm und dämlich

Mag sein, dass es noch Schwachstellen gibt, doch z.B: gimp setzt auf die Libarys und funktioniert ganz gut

Christian hat geschrieben:2. kann ich mir nicht vorstellen das die gtk2 development bibliotheken unter suse standartmässig installiert werden das wär ganz schön schwachsinnig @pluto die musst du installiern um gtk2 programme zu erstellen also einfach im synaptik nach libgtk2 suchen und die pakete mit -dev installieren

Wenn Gimp oder gnome installiert sind, werden die libarys mit installiert. Sind also meist, auch bei SuSE, vorhanden.

Ich habe mal versucht bekannte Fehler zu finden, die gegen die Verwendung von gtk2 sprechen, doch leider? Fehlanzeige.

bike

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 »

bike hat geschrieben:Wenn Gimp oder gnome installiert sind, werden die libarys mit installiert. Sind also meist, auch bei SuSE, vorhanden.


Gut, das beantwortet meine Frage :) Habe nämlich Gimp installiert.

Nun, in Sachen Fehlern in der gtk2 kenne ich mich nicht aus. Nur kann ich sagen, dass sie für meine (relativ anspruchslosen) Programme fehlerfrei genug ist; finde das Design ganz gut...

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 »

Wenn Gimp oder gnome installiert sind, werden die libarys mit installiert. Sind also meist, auch bei SuSE, vorhanden.

Nö, hab auch gnome und gimp installiert und die brauchen keine development version der bibliotheken sondern nur die normalen wozu auch

Ich glaub ihr versteht nicht was ich meine es gibt von jeder bibliothek 2 pakete einmal die bibliothek an sich und dann das development paket das die objektdateien zum gegenlinken enthält um software zu compilieren die die bibliothek benutzt braucht man auch das devel paket ansonsten nur das normale auf euren entwicklungsmaschienen also beide pakete auf den maschienen eurer nutzer nur das normale. Warum sollte man auf einem normalen system die entwicklungspakete rumliegen haben deshalb hab ich gesagt schwachsinn wenn suse immer gleich alle entwicklungspakete mitinstalliert ist das nichts weiter als plattenplatzverschwendung

Mag sein, dass es noch Schwachstellen gibt, doch z.B: gimp setzt auf die Libarys und funktioniert ganz gut


ich meinte nicht die gtk2 bibliotheken sondern das gtk2 lazarus interface LESEN !
W.m.k.A.h.e.m.F.h. -> http://www.gidf.de/

Antworten