[solved] Lazarus-SVN, GTK2 und Linken

Für Fehler in Lazarus, um diese von anderen verifizieren zu lassen.
Targion
Beiträge: 688
Registriert: Mi 3. Okt 2007, 21:00
OS, Lazarus, FPC: Linux (L 0.9.29 FPC 2.4.2)
CPU-Target: x86_64

Re: Lazarus-SVN, GTK2 und Linken

Beitrag von Targion »

Aha! Ich glaube, ich weiß jetzt, wo der Fehler liegt! Die Verlinkung würde ich aber nicht als "sportlich", sondern eher als "dämlich" bezeichnen.
Ich habe da einfach ein extrem altes Stück code blind kopiert. (Das ist das zweite mal, dass ich dieses Problem habe)
Dank Vincent versucht FPC jetzt auch nicht mehr, gegen GTK1 zu linken - das ist gelöst. Mal sehen, ob dieses "undefined reference" auch zu lösen ist.

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

Re: Lazarus-SVN, GTK2 und Linken

Beitrag von theo »

Targion hat geschrieben: würde ich aber nicht als "sportlich", sondern eher als "dämlich" bezeichnen.
Das hast du gesagt.... ;-)

Du hast einfach auf deinem System keine GTK1 Libs, da helfen alle Symlinks (sportlich oder dämlich) nix.
Entweder GTK1 nicht verwenden oder sonst installieren.

Targion
Beiträge: 688
Registriert: Mi 3. Okt 2007, 21:00
OS, Lazarus, FPC: Linux (L 0.9.29 FPC 2.4.2)
CPU-Target: x86_64

Re: Lazarus-SVN, GTK2 und Linken

Beitrag von Targion »

Das habe ich jetzt auch endlich gemerkt. Hat auch lange genug gedauert...
Nachdem ich mich mit diesem Bugreport schon blamiert habe:
Bekommt ihr auch folgenden Fehler, wenn diese Units eingebunden sind?

Code: Alles auswählen

uses gtkdef, gtk2, gdk2pixbuf, gtkint, gdk2;

Code: Alles auswählen

/usr/lib/lazarus/lcl/units/x86_64-linux/gtk2/gtkint.o: In function `CREATE':
/usr/lib/lazarus/lcl/interfaces/gtk2//../gtk/gtkwidgetset.inc:190: undefined reference to `g_thread_init'
listallgo.lpr(44,1) Error: Error while linking
Wenn nicht, dann war die Nacht gestern wohl zu lang!

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

Re: Lazarus-SVN, GTK2 und Linken

Beitrag von theo »

Hast du mal mit gtk2int statt gtkint versucht?

Targion
Beiträge: 688
Registriert: Mi 3. Okt 2007, 21:00
OS, Lazarus, FPC: Linux (L 0.9.29 FPC 2.4.2)
CPU-Target: x86_64

Re: Lazarus-SVN, GTK2 und Linken

Beitrag von Targion »

:mrgreen: Das habe ich als erstes gemacht... Hat aber leider nichts gebracht. gtk2def kann ich nicht nutzen, weil ich das TGDIObject aus gtkdef brauche.
Bekommst du denn diese Fehlermeldung?

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

Re: Lazarus-SVN, GTK2 und Linken

Beitrag von theo »

Targion hat geschrieben::mrgreen: Das habe ich als erstes gemacht... Hat aber leider nichts gebracht. gtk2def kann ich nicht nutzen, weil ich das TGDIObject aus gtkdef brauche.
Bekommst du denn diese Fehlermeldung?
gtkdef baut aber keine gtk1 Abhängigkeiten afaics.

Code: Alles auswählen

unit GtkDef;
 
{$mode objfpc} 
{$LONGSTRINGS ON}
 
interface
 
uses
  {$IFDEF gtk2}
  glib2, gdk2pixbuf, pango, gdk2, gtk2,
  {$ELSE}
  glib, gdk, gtk, gdkpixbuf,
  {$ENDIF}
Bei mir geht alles, ich habe OpenSuSE 11.1 ;-)

Targion
Beiträge: 688
Registriert: Mi 3. Okt 2007, 21:00
OS, Lazarus, FPC: Linux (L 0.9.29 FPC 2.4.2)
CPU-Target: x86_64

Re: Lazarus-SVN, GTK2 und Linken

Beitrag von Targion »

Code: Alles auswählen

{$IFDEF gtk2}
Ist es nicht

Code: Alles auswählen

{$IFDEF LCLGTK2}
? Oder geht beides? Ich teste grade das Ganze mit einer älteren GTK2-Version (Ich nutze hier das GTK 2.18, GTK 2.16 ist aktuell stabil, glaube ich)

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

Re: Lazarus-SVN, GTK2 und Linken

Beitrag von theo »

Weiss ich nicht. Würde mich aber wundern, wenn da so ein "dämlicher" Bug drin wäre. ;-)

Targion
Beiträge: 688
Registriert: Mi 3. Okt 2007, 21:00
OS, Lazarus, FPC: Linux (L 0.9.29 FPC 2.4.2)
CPU-Target: x86_64

Re: Lazarus-SVN, GTK2 und Linken

Beitrag von Targion »

Unter Ubuntu Jaunty gibt's die selbe Meldung...

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

Re: Lazarus-SVN, GTK2 und Linken

Beitrag von theo »

Targion hat geschrieben:Unter Ubuntu Jaunty gibt's die selbe Meldung...
Testest du nur auf 64bit oder hast du die Probleme auch auf 32bit?

Targion
Beiträge: 688
Registriert: Mi 3. Okt 2007, 21:00
OS, Lazarus, FPC: Linux (L 0.9.29 FPC 2.4.2)
CPU-Target: x86_64

Re: Lazarus-SVN, GTK2 und Linken

Beitrag von Targion »

Ich teste beide.

Targion
Beiträge: 688
Registriert: Mi 3. Okt 2007, 21:00
OS, Lazarus, FPC: Linux (L 0.9.29 FPC 2.4.2)
CPU-Target: x86_64

Re: Lazarus-SVN, GTK2 und Linken

Beitrag von Targion »

Bekommt wirklich keiner die gleiche Meldung?
Selbst unter Fedora11:

Code: Alles auswählen

/usr/lib/lazarus/lcl/units/i386-linux/gtk2/gtkint.o: In function `TGTKWIDGETSET__CREATE':
/home/abuild/rpmbuild/BUILD/lazarus-0.9.27/lazarus/lcl/interfaces/gtk/gtkwidgetset.inc:190: undefined reference to `g_thread_init'
Alle Maschinen geben diese Meldung aus... Soll ich einen Bugreport wagen?

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

Re: Lazarus-SVN, GTK2 und Linken

Beitrag von theo »

Targion hat geschrieben:Bekommt wirklich keiner die gleiche Meldung?
Ich nicht.
Targion hat geschrieben:Soll ich einen Bugreport wagen?
Nö, sowas hat immer mit nicht passenden Libs und Symlinks und Schrott zu tun.
Wenn schon, dann mach bei Fedora einen Bugrep.

Targion
Beiträge: 688
Registriert: Mi 3. Okt 2007, 21:00
OS, Lazarus, FPC: Linux (L 0.9.29 FPC 2.4.2)
CPU-Target: x86_64

Re: Lazarus-SVN, GTK2 und Linken

Beitrag von Targion »

Gut, dass ich's nicht gemacht habe sondern stattdessen etwas nachdachte:
In einem alten Makescript war das linken der Threading-Lib für GTK2 durch ein Flag verboten worden.
Jetzt funktioniert alles wieder :lol:
Möge dieser Thread so schnell wie möglich in der Versenkung verschwinden! :evil:

Vincent
Beiträge: 17
Registriert: Do 20. Sep 2007, 14:05

Re: Lazarus-SVN, GTK2 und Linken

Beitrag von Vincent »

Targion hat geschrieben: Möge dieser Thread so schnell wie möglich in der Versenkung verschwinden! :evil:
It helps if you close the lazarus bug report, it won't show in the list of recently resolved issues at http://bugs.freepascal.org/my_view_page.php" onclick="window.open(this.href);return false; anymore :wink:

Antworten