Re: gnome-objc failure



Michael writes:
>I'm stumped.
>
>make[2]: Entering directory `/src/gnome-objc/obgnome'
>/bin/sh ../libtool --mode=link gcc -g -O2  -o obgnome-hello  obgnome-hello.lo libobgnome.la ../obgtk/libobgtk.la
>-lgnomeui -lgnome -lgnomesupport -ldl -lgdk_imlib -ltiff -lz -ljpeg -lgif -ljpeg -lpng -lz -lSM -lICE -L/usr/lib
>-L/usr/X11R6/lib -lgtk-1.1 -lgdk-1.1 -lglib-1.1 -lXi -lXext -lX11 -lpthread -lm -lgnome -lgnomesupport -ldl
>-lgtktty -lSM -lICE -L/usr/lib -L/usr/X11R6/lib -lgtk-1.1 -lgdk-1.1 -lglib-1.1 -lXi -lXext -lX11 -lpthread -lm
>-lobjc -lpthread 
>gcc -g -O2 -o .libs/obgnome-hello obgnome-hello.o -Wl,--rpath -Wl,/usr/lib .libs/libobgnome.so -lobjc -lgnomeui
>-lgnome -lgnomesupport -ldl -lgdk_imlib -ltiff -lz -ljpeg -lgif -ljpeg -lpng -lz -lSM -lICE -L/usr/lib
>-L/usr/X11R6/lib -lgtk-1.1 -lgdk-1.1 -lglib-1.1 -lXi -lXext -lX11 -lpthread -lm -lgnome -lgnomesupport -ldl
>-lgtktty -lSM -lICE -L/usr/lib -L/usr/X11R6/lib -lgtk-1.1 -lgdk-1.1 -lglib-1.1 -lXi -lXext -lX11 -lpthread -lm
>-Wl,--rpath -Wl,/usr/lib ../obgtk/.libs/libobgtk.so -lobjc -lSM -lICE -L/usr/lib -L/usr/X11R6/lib -lgtk-1.1 -lgdk-1.1
>-lglib-1.1 -lXi -lXext -lX11 -lpthread -lm -lgnomeui -lgnome -lgnomesupport -ldl -lgdk_imlib -ltiff -lz -ljpeg -lgif
>-ljpeg -lpng -lz -lSM -lICE -L/usr/lib -L/usr/X11R6/lib -lgtk-1.1 -lgdk-1.1 -lglib-1.1 -lXi -lXext -lX11 -lpthread
>-lm -lgnome -lgnomesupport -ldl -lgtktty -lSM -lICE -L/usr/lib -L/usr/X11R6/lib -lgtk-1.1 -lgdk-1.1 -lglib-1.1
>-lXi -lXext -lX11 -lpthread -lm -lobjc -lpthread
>.libs/libobgnome.so: undefined reference to `gnome_pixmap_new_from_rgb_d_at_size'
>collect2: ld returned 1 exit status
>make[2]: *** [obgnome-hello] Error 1
>make[2]: Leaving directory `/src/gnome-objc/obgnome'
>make[1]: *** [all-recursive] Error 1
>make[1]: Leaving directory `/src/gnome-objc'
>make: *** [all-recursive-am] Error 2

I got that error too.
gnome_pixmap_new_from_rgb_d_at_size is part of gnome-libs, in libgnomeui/gnome-pixmap.[ch].
Well, it's in gnome-pixmap.h, but there is no corresponding entry in gnome-pixmap.c :(

I've included a patch to fix this, I'm not sure it is correct, but works for me.
(my first time using the diff -ur command, please forgive me if it's wrong)

***** start of patch *****

diff -ur gnome-libs.orig/libgnomeui/gnome-pixmap.c gnome-libs/libgnomeui/gnome-pixmap.c
--- gnome-libs.orig/libgnomeui/gnome-pixmap.c	Thu May 21 06:54:28 1998
+++ gnome-libs/libgnomeui/gnome-pixmap.c	Thu May 21 06:50:38 1998
@@ -197,6 +197,23 @@
 }
 
 GtkWidget *
+gnome_pixmap_new_from_rgb_d_at_size (unsigned char *data, unsigned char *alpha,
+				     int rgb_width, int rgb_height,
+				     int width, int height)
+{
+	GnomePixmap *gpixmap;
+
+	g_return_val_if_fail(data != NULL, NULL);
+
+	gpixmap = gtk_type_new (gnome_pixmap_get_type ());
+	gnome_pixmap_load_rgb_d_at_size (gpixmap, data, alpha,
+					rgb_width, rgb_height,
+					width, height);
+
+	return GTK_WIDGET (gpixmap);
+}
+
+GtkWidget *
 gnome_pixmap_new_from_gnome_pixmap (GnomePixmap *gpixmap_old)
 {
 	GnomePixmap *gpixmap;
diff -ur gnome-libs.orig/libgnomeui/gnome-pixmap.h gnome-libs/libgnomeui/gnome-pixmap.h
--- gnome-libs.orig/libgnomeui/gnome-pixmap.h	Thu May 21 06:54:28 1998
+++ gnome-libs/libgnomeui/gnome-pixmap.h	Thu May 21 06:44:08 1998
@@ -41,7 +41,7 @@
 GtkWidget *gnome_pixmap_new_from_rgb_d_shaped  (unsigned char *data, unsigned char *alpha,
 						int rgb_width, int rgb_height,
 						GdkImlibColor *shape_color);
-GtkWidget *gnome_pixmap_new_from_rgb_d_at_size (char *data, unsigned char *alpha,
+GtkWidget *gnome_pixmap_new_from_rgb_d_at_size (unsigned char *data, unsigned char *alpha,
 						int rgb_width, int rgb_height,
 						int width, int height);
 GtkWidget *gnome_pixmap_new_from_gnome_pixmap  (GnomePixmap *gpixmap);

***** end of patch *****

Hope this helps.

--
John Ellis <gqview@geocities.com>
http://www.geocities.com/SiliconValley/Haven/5235/

diff -ur gnome-libs.orig/libgnomeui/gnome-pixmap.c gnome-libs/libgnomeui/gnome-pixmap.c
--- gnome-libs.orig/libgnomeui/gnome-pixmap.c	Thu May 21 06:54:28 1998
+++ gnome-libs/libgnomeui/gnome-pixmap.c	Thu May 21 06:50:38 1998
@@ -197,6 +197,23 @@
 }
 
 GtkWidget *
+gnome_pixmap_new_from_rgb_d_at_size (unsigned char *data, unsigned char *alpha,
+				     int rgb_width, int rgb_height,
+				     int width, int height)
+{
+	GnomePixmap *gpixmap;
+
+	g_return_val_if_fail(data != NULL, NULL);
+
+	gpixmap = gtk_type_new (gnome_pixmap_get_type ());
+	gnome_pixmap_load_rgb_d_at_size (gpixmap, data, alpha,
+					rgb_width, rgb_height,
+					width, height);
+
+	return GTK_WIDGET (gpixmap);
+}
+
+GtkWidget *
 gnome_pixmap_new_from_gnome_pixmap (GnomePixmap *gpixmap_old)
 {
 	GnomePixmap *gpixmap;
diff -ur gnome-libs.orig/libgnomeui/gnome-pixmap.h gnome-libs/libgnomeui/gnome-pixmap.h
--- gnome-libs.orig/libgnomeui/gnome-pixmap.h	Thu May 21 06:54:28 1998
+++ gnome-libs/libgnomeui/gnome-pixmap.h	Thu May 21 06:44:08 1998
@@ -41,7 +41,7 @@
 GtkWidget *gnome_pixmap_new_from_rgb_d_shaped  (unsigned char *data, unsigned char *alpha,
 						int rgb_width, int rgb_height,
 						GdkImlibColor *shape_color);
-GtkWidget *gnome_pixmap_new_from_rgb_d_at_size (char *data, unsigned char *alpha,
+GtkWidget *gnome_pixmap_new_from_rgb_d_at_size (unsigned char *data, unsigned char *alpha,
 						int rgb_width, int rgb_height,
 						int width, int height);
 GtkWidget *gnome_pixmap_new_from_gnome_pixmap  (GnomePixmap *gpixmap);


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]