View Issue Details

IDProjectCategoryView StatusLast Update
0011837FPCTextmode IDEpublic2008-10-11 23:04
Reporterdaoo Assigned ToMattias Gaertner  
PrioritynormalSeverityminorReproducibilityalways
Status closedResolutionfixed 
OSlinux 
Summary0011837: GtkFileSystemError removed in gtk 2.13.4
DescriptionGtkFileSystemError removed in gtk 2.13.4 which makes lazarus fail compilation with gtk2. GTK2 commit: http://mail.gnome.org/archives/svn-commits-list/2008-June/msg04258.html
The following output is produced:
Linking ../lazarus
/usr/local/lib/fpc/2.2.2/units/x86_64-linux/gtk2/gtk2.o: In function `GTK2_GTK_FILE_SYSTEM_ERROR$$LONGWORD':
gtk2.pas:(.text+0x104ed): undefined reference to `gtk_file_system_error_quark'
/usr/local/lib/fpc/2.2.2/units/x86_64-linux/gtk2/gtk2.o: In function `GTK2_GTK_TYPE_FILE_INFO$$QWORD':
gtk2.pas:(.text+0x10505): undefined reference to `gtk_file_info_get_type'
/usr/local/lib/fpc/2.2.2/units/x86_64-linux/gtk2/gtk2.o: In function `GTK2_GTK_TYPE_FILE_SYSTEM$$QWORD':
gtk2.pas:(.text+0x1051d): undefined reference to `gtk_file_system_get_type'
/usr/local/lib/fpc/2.2.2/units/x86_64-linux/gtk2/gtk2.o: In function `GTK2_GTK_TYPE_FILE_FOLDER$$QWORD':
gtk2.pas:(.text+0x105b5): undefined reference to `gtk_file_folder_get_type'
lazarus.pp(119,1) Error: Error while linking
lazarus.pp(119,1) Fatal: There were 1 errors compiling module, stopping
Fatal: Compilation aborted
make[2]: *** [lazarus] Error 1
make[2]: Leaving directory `/media/sdb2/software/lazarus/trunk/ide'
make[1]: *** [ide] Error 2
make[1]: Leaving directory `/media/sdb2/software/lazarus/trunk/ide'
make: *** [ide] Error 2
TagsNo tags attached.
Fixed in Revision
FPCOldBugId
FPCTarget
Attached Files

Relationships

has duplicate 0012308 closedVincent Snijders Lazarus GTK2 not support in new Linux OS 
has duplicate 0012353 closedVincent Snijders Lazarus Linking fails if GTK2 is used (GNOME 2.24) 

Activities

Marc Weustink

2008-08-10 20:09

administrator   ~0021201

see http://mail.gnome.org/archives/svn-commits-list/2008-June/msg04258.html

Mattias Gaertner

2008-08-12 14:33

manager   ~0021265

Where are they used in lazarus?
I didn't found anything with gtk_file_ in the gtk2 interface.

Mattias Gaertner

2008-08-19 15:01

manager   ~0021493

What distribution has gtk 2.14?

Paul Gevers

2008-08-21 22:26

reporter   ~0021579

I see what I think is the same problem in Ubuntu Intrepid:

My program source is available at
http://mentors.debian.net/debian/pool/main/w/winff

Linking winff
/usr/lib/fpc/2.2.0/units/i386-linux/gtk2/gtk2.o: In function `GTK2_GTK_FILE_SYSTEM_ERROR$$LONGWORD':
gtk2.pas:(.text+0xb7d1): undefined reference to `gtk_file_system_error_quark'
/usr/lib/fpc/2.2.0/units/i386-linux/gtk2/gtk2.o: In function `GTK2_GTK_TYPE_FILE_INFO$$LONGWORD':
gtk2.pas:(.text+0xb7e1): undefined reference to `gtk_file_info_get_type'
/usr/lib/fpc/2.2.0/units/i386-linux/gtk2/gtk2.o: In function `GTK2_GTK_TYPE_FILE_SYSTEM$$LONGWORD':
gtk2.pas:(.text+0xb7f1): undefined reference to `gtk_file_system_get_type'
/usr/lib/fpc/2.2.0/units/i386-linux/gtk2/gtk2.o: In function `GTK2_GTK_TYPE_FILE_FOLDER$$LONGWORD':
gtk2.pas:(.text+0xb871): undefined reference to `gtk_file_folder_get_type'
winff.lpr(31,1) Error: Error while linking

Below I depict the Ubuntu package files that seem relevant for version numbers.
fp-units-rtl_2.2.0-dfsg1-9_i386.deb
fp-compiler_2.2.0-dfsg1-9_i386.deb
fp-ide_2.2.0-dfsg1-9_i386.deb
fp-units-base_2.2.0-dfsg1-9_i386.deb
fp-units-db_2.2.0-dfsg1-9_i386.deb
fp-units-fcl_2.2.0-dfsg1-9_i386.deb
fp-units-fv_2.2.0-dfsg1-9_i386.deb
fp-units-gfx_2.2.0-dfsg1-9_i386.deb
libgtk2.0-common_2.13.7-0ubuntu1_all.deb
libglib2.0-0_2.17.7-1_i386.deb
libgtk2.0-dev_2.13.7-0ubuntu1_i386.deb
fp-units-gtk_2.2.0-dfsg1-9_i386.deb
fp-units-gnome1_2.2.0-dfsg1-9_i386.deb
fp-units-gtk2_2.2.0-dfsg1-9_i386.deb
fp-units-misc_2.2.0-dfsg1-9_i386.deb
fp-units-multimedia_2.2.0-dfsg1-9_i386.deb
fp-units-net_2.2.0-dfsg1-9_i386.deb
fpc_2.2.0-dfsg1-9_all.deb
libglib1.2ldbl_1.2.10-19build1_i386.deb
libgtk1.2-common_1.2.10-18.1build2_all.deb
libgtk1.2_1.2.10-18.1build2_i386.deb
libgdk-pixbuf2_0.22.0-14_i386.deb
libglib1.2-dev_1.2.10-19build1_i386.deb
libgtk1.2-dev_1.2.10-18.1build2_i386.deb
libgdk-pixbuf-dev_0.22.0-14_i386.deb
lazarus-src_0.9.24-0-9_all.deb
lazarus-ide_0.9.24-0-9_i386.deb

I hope this is helpful.

Paul Ishenin

2008-08-22 08:16

developer   ~0021587

Lazarus can not solve this issue. Gtk pagage is owned by fpc team. We can only create a patch and ask them to apply it.

2008-08-22 09:31

 

unneeded_symbols.patch (1,675 bytes)   
Index: packages/gtk2/src/gtk+/gtk/gtk2.pas
===================================================================
--- packages/gtk2/src/gtk+/gtk/gtk2.pas	(revision 11628)
+++ packages/gtk2/src/gtk+/gtk/gtk2.pas	(working copy)
@@ -63,6 +63,8 @@
 {$DEFINE HasGTK2_8}
 {$ENDIF}
 
+// {$define HasGTK_FileSystem}
+
 interface
 
 uses
Index: packages/gtk2/src/gtk+/gtk/gtkfilesystem.inc
===================================================================
--- packages/gtk2/src/gtk+/gtk/gtkfilesystem.inc	(revision 11628)
+++ packages/gtk2/src/gtk+/gtk/gtkfilesystem.inc	(working copy)
@@ -115,17 +115,14 @@
 
 {$IFDEF read_interface_rest}
 
+{$ifdef HasGTK_FileSystem}
 
 { GError enumeration for GtkFileSystem  }
 
 function GTK_FILE_SYSTEM_ERROR : TGQuark;
 
-
-
 function gtk_file_system_error_quark:TGQuark;cdecl;external gtklib name 'gtk_file_system_error_quark';
 
-
-
 { Boxed-type for gtk_file_folder_get_info() results  }
 
 function GTK_TYPE_FILE_INFO : GType;
@@ -244,11 +241,16 @@
 { GtkFileSystem modules support  }
 
 function _gtk_file_system_create(file_system_name:Pchar):PGtkFileSystem;cdecl;external gtklib name '_gtk_file_system_create';
+
+{$endif HasGTK_FileSystem}
+
 {$endif}  {read_interface_rest}
 
 
 {$ifdef read_implementation}
 
+{$ifdef HasGTK_FileSystem}
+
 function GTK_FILE_SYSTEM_ERROR : TGQuark;
   begin
      GTK_FILE_SYSTEM_ERROR:=gtk_file_system_error_quark;
@@ -307,6 +309,8 @@
    GTK_FILE_FOLDER_GET_IFACE:=G_TYPE_INSTANCE_GET_INTERFACE(inst,GTK_TYPE_FILE_FOLDER);
 end;
 
+{$endif HasGTK_FileSystem}
+
 function gtk_file_path_new_dup(str : Pgchar) : PGtkFilePath;
 begin
    gtk_file_path_new_dup:=PGtkFilePath(g_strdup(str));
unneeded_symbols.patch (1,675 bytes)   

Paul Ishenin

2008-08-22 09:32

developer   ~0021589

- apply attached patch to the fpc trunk
- rebuild fpc
- rebuild lazarus

If the problem is solved we will ask fpc team to apply it.

Marco van de Voort

2008-08-25 11:31

manager   ~0021679

Please test Paul's suggestion above.

Paul Ishenin

2008-08-25 16:20

developer   ~0021697

Last edited: 2008-10-11 23:04

Fixed in r11651. Please close if ok.
Please merge it to the fixes branch.

daoo

2008-08-26 08:04

reporter   ~0021706

Fixed in fpc trunk by Paul's patch.

Issue History

Date Modified Username Field Change
2008-08-10 20:06 daoo New Issue
2008-08-10 20:08 Marc Weustink Project FPC => Lazarus
2008-08-10 20:09 Marc Weustink LazTarget => -
2008-08-10 20:09 Marc Weustink Note Added: 0021201
2008-08-10 20:09 Marc Weustink Status new => confirmed
2008-08-10 20:09 Marc Weustink Target Version => 0.9.26
2008-08-11 10:52 Marc Weustink LazTarget - => 0.9.26
2008-08-11 10:52 Marc Weustink Widgetset => GTK
2008-08-11 10:52 Marc Weustink Product Version 2.2.0 =>
2008-08-12 14:33 Mattias Gaertner Note Added: 0021265
2008-08-12 14:44 Mattias Gaertner Status confirmed => assigned
2008-08-12 14:44 Mattias Gaertner Assigned To => Mattias Gaertner
2008-08-12 14:45 Mattias Gaertner Status assigned => feedback
2008-08-19 15:01 Mattias Gaertner Note Added: 0021493
2008-08-21 22:26 Paul Gevers Note Added: 0021579
2008-08-22 08:16 Paul Ishenin Note Added: 0021587
2008-08-22 08:17 Paul Ishenin Status feedback => assigned
2008-08-22 09:31 Paul Ishenin File Added: unneeded_symbols.patch
2008-08-22 09:32 Paul Ishenin Note Added: 0021589
2008-08-25 00:22 Paul Ishenin Project Lazarus => FPC
2008-08-25 11:31 Marco van de Voort Note Added: 0021679
2008-08-25 11:31 Marco van de Voort Status assigned => feedback
2008-08-25 11:31 Marco van de Voort Target Version 0.9.26 =>
2008-08-25 16:20 Paul Ishenin Status feedback => resolved
2008-08-25 16:20 Paul Ishenin Resolution open => fixed
2008-08-25 16:20 Paul Ishenin Note Added: 0021697
2008-08-26 08:04 daoo Status resolved => closed
2008-08-26 08:04 daoo Note Added: 0021706
2008-10-08 09:52 Vincent Snijders Relationship added has duplicate 0012308
2008-10-11 23:04 Vincent Snijders Note Edited: 0021697
2008-10-11 23:04 Vincent Snijders Relationship added has duplicate 0012353