Re: gtk+-2.8.6 link error I_ libgtk-x11-2.0.so (and now weeK_start in gtkcalendar.c)
Hi, For all those following along (!) I've been able to make gtk+2.8.6. The problem is within gtk/gtkcalendar.c. On my initial efforts to make the gtk+ package the compile croaked with an error on variable week_start as undefined. I looked around and saw mention of gtkcalendar.c cvs fix for the problem. The version in the cvs tree is mentioned below. Ok, it fixed the week_start error but introduced another undefined variable I_. When no one on the list indicated that they knew about it I did a find . -exec grep " I_" {} \; -ls in the gtk+ source tree and could only find one file it was used in, gtkcalendar.c. No definition and not defined in any header files. So, I went back to the original gtkcalendar.c file, the one with the week_start error, and looked at it. What I found was week_start is defined as a structure member but in two places it was being used as a simple varstatic_string().iable. I changed the code so that week_start was referenced thru the structure pointer priv->week_start and altho there are still warnings in the file, it compiled and all of gtk+2.8.6 compiled and linked and installed. Did anyone make 2.8.6? Is this a issue between linux and solaris? I have no idea whether my made version of gtk+ works correctly as there are a number of warnings, primarily of pointer refs, throughout the compile, but hey!, who's quibbling...? Any questions, comments let me know. Tom gtk/gtkcalander.c change start at line 667. original lines are commented with orig: prefacing original line. #else /* Translate to calendar:week_start:0 if you want Sunday to be the * first day of the week to calendar:week_start:1 if you want Monday * to be the first day of the week, and so on. */ priv->week_start = _("calendar:week_start:0"); /* orig: if (strncmp (week_start, "calendar:week_start:", 20) == 0) */ /* priv->week_start = *(week_start + 20) - '0'; */ if (strncmp (priv->week_start, "calendar:week_start:", 20) == 0) priv->week_start = (priv->week_start + 20) - '0'; else priv->week_start = -1; if (priv->week_start < 0 || priv->week_start > 6) { g_warning ("Whoever translated calendar:week_start:0 did so wrongly.\n"); priv->week_start = 0; } #endif On Thu, 13 Oct 2005 15:13:15 -0700, Tom Crockett <[EMAIL PROTECTED]> wrote: Ok, something is borked, for sure. Thanks for the feedback. I don't know what. No one else has indicated that they have run into this problem, so I'm working under the assumption that it is in my environment. First, however, there was a problem with gtkcalendar.c. The fix was a patched file (194) that I only found via a reference to gtk cvs in some googled list reference. That fixed the initial problem I had with compiling gtk+. So now, trying to take a hint that something was borked, I looked around and found a number of iterations of various gtk+ related libraries scattered around my system, i.e. static and shared libs in /usr/lib; /usr/local/lib and /opt/sfw/lib with dates going back to 2000. I removed the older instances and tried a make distclean, configure., make and got, unfortunately, the same result. The msgs about multiple inclusions which are a warning, and then the show stopper of the undefined symbol I_ in ./.libs/libgtk-x11-2.0.so which I suspect at this point is a macro definition problem in some include file. I saw a reference to some variable being defined to I_ to save space or for claritiy. .. ---cvs info--- Log of /gtk+/gtk/gtkalignment.c 1.44View Download Annotate [select for diffs] Diff to previous 1.43 MAIN 6 weeks ago Thu Sep 1 05:11:38 2005 UTC Changes since 1.43: +1 -1 lines matthiasc Log: 2005-09-01 Matthias Clasen <[EMAIL PROTECTED]> * gdk/*.c: Intern some more strings. * gtk/gtkintl.h: * gtk/*.c: Define an I_() macro and use it instead of the bulky g_intern_static_string(). ---end cvs--- One or two character symbols are very difficult to grep for. Who knows if this (or somewhere else like it) is what is causing the problem. GTK+ is a very complex project made even more so with all of the external project dependencies that are also in development. Hopefully, this will help someone help me find where the borking has occurred. Thanks, Tom On Wed, 12 Oct 2005 21:48:49 -0700, <[EMAIL PROTECTED]> wrote: On Wed, 12 Oct 2005 21:16:09 PDT, Tom Crockett said: /bin/bash ../libtool --mode=link gcc -g -O2 -Wall-o gtk-query-immodules-2.0 queryimmodules.o libgtk-x11-2.0.la ../gdk-pixbuf/libgdk_pixbuf-2.0.la ../gdk/libgdk-x11-2.0.la Looks like a borked .la libtool file? That might result in this: gcc -g -O2 -Wall -o .libs/gtk-query
Re: gtk+-2.8.6 link error I_ libgtk-x11-2.0.so
Ok, something is borked, for sure. Thanks for the feedback. I don't know what. No one else has indicated that they have run into this problem, so I'm working under the assumption that it is in my environment. First, however, there was a problem with gtkcalendar.c. The fix was a patched file (194) that I only found via a reference to gtk cvs in some googled list reference. That fixed the initial problem I had with compiling gtk+. So now, trying to take a hint that something was borked, I looked around and found a number of iterations of various gtk+ related libraries scattered around my system, i.e. static and shared libs in /usr/lib; /usr/local/lib and /opt/sfw/lib with dates going back to 2000. I removed the older instances and tried a make distclean, configure., make and got, unfortunately, the same result. The msgs about multiple inclusions which are a warning, and then the show stopper of the undefined symbol I_ in ./.libs/libgtk-x11-2.0.so which I suspect at this point is a macro definition problem in some include file. I saw a reference to some variable being defined to I_ to save space or for claritiy. .. ---cvs info--- Log of /gtk+/gtk/gtkalignment.c 1.44View Download Annotate [select for diffs] Diff to previous 1.43 MAIN 6 weeks ago Thu Sep 1 05:11:38 2005 UTC Changes since 1.43: +1 -1 lines matthiasc Log: 2005-09-01 Matthias Clasen <[EMAIL PROTECTED]> * gdk/*.c: Intern some more strings. * gtk/gtkintl.h: * gtk/*.c: Define an I_() macro and use it instead of the bulky g_intern_static_string(). ---end cvs--- One or two character symbols are very difficult to grep for. Who knows if this (or somewhere else like it) is what is causing the problem. GTK+ is a very complex project made even more so with all of the external project dependencies that are also in development. Hopefully, this will help someone help me find where the borking has occurred. Thanks, Tom On Wed, 12 Oct 2005 21:48:49 -0700, <[EMAIL PROTECTED]> wrote: On Wed, 12 Oct 2005 21:16:09 PDT, Tom Crockett said: /bin/bash ../libtool --mode=link gcc -g -O2 -Wall-o gtk-query-immodules-2.0 queryimmodules.o libgtk-x11-2.0.la ../gdk-pixbuf/libgdk_pixbuf-2.0.la ../gdk/libgdk-x11-2.0.la Looks like a borked .la libtool file? That might result in this: gcc -g -O2 -Wall -o .libs/gtk-query-immodules-2.0 queryimmodules.o ./.libs/libgtk-x11-2.0.so -L/usr/local/lib /usr4/src/gtk+-2.8.6/gdk/.libs/libgdk-x11-2.0.so -L/usr/openwin/lib /usr/local/lib/libatk-1.0.so ../gdk-pixbuf/.libs/libgdk_pixbuf-2.0.so ../gdk/.libs/libgdk-x11-2.0.so -lXext /usr/local/lib/libpangocairo-1.0.so ^^ Not sure why both of these got specified, because apparently they're two different references to the same file: ld: warning: file ../gdk/.libs/libgdk-x11-2.0.so: linked to /usr4/src/gtk+-2.8.6/gdk/.libs/libgdk-x11-2.0.so: attempted multiple inclusion of file (And the same issue applies to:) ld: warning: file /usr4/src/gtk+-2.8.6/gdk-pixbuf/.libs/libgdk_pixbuf-2.0.so: linked to ../gdk-pixbuf/.libs/libgdk_pixbuf-2.0.so: attempted multiple inclusion of file Undefined first referenced symbol in file I_ ./.libs/libgtk-x11-2.0.so ld: fatal: Symbol referencing errors. No output written to This looks like pre-processor borkage of some sort. Looks like something was supposed to be substituted and it failed to happen... ___ gtk-list mailing list gtk-list@gnome.org http://mail.gnome.org/mailman/listinfo/gtk-list
gtk+-2.8.6 link error I_ libgtk-x11-2.0.so
Hi, I'm new on the list, but I have searched the archives as best I could for this situation. Little did I realize the length and depth of this journey I found myself on when I thought, "Hey, I could maybe view an mpg file on my Ultra 10." Many compiled packages (sometimes compiled multiple times) later I've arrived at this point. I've followed the suggested flow of compilation as stated in the faq: GLib, Pango, ATK and then GTK+. Each of those have their own dependency adventures and ATK? Well, I finally resorted to removing the docs entry in the subdirs directive in the Makefile in order stop the docs make complaint of "I don't know how to make anything" which of course it couldn't as the Makefile in docs had most directives commented out. I'm pretty sure there must be a reason for that, but I really don't know what as the INSTALL file simply says ./configure, make, and make install. Anyway, may be the following GTK+ compile end fragment is related, or maybe not... I really hope I'm missing something obvious! I appreciate any suggestions and/or help! Thanks, Tom My machine: SunOS owl 5.8 Generic_117350-18 sun4u sparc SUNW,Ultra-5_10 owl[tmc]% gcc -v Reading specs from /usr/local/lib/gcc-lib/sparc-sun-solaris2.8/3.3.2/specs Configured with: ../configure Thread model: posix gcc version 3.3.2 owl[root]% pwd /usr4/src/gtk+-2.8.6 owl[root]% make make all-recursive Making all in po Making all in po-properties Making all in gdk-pixbuf make all-recursive Making all in pixops Making all in gdk make all-recursive Making all in x11 Making all in gtk make all-recursive Making all in stock-icons Making all in theme-bits Making all in xdgmime /bin/bash ../libtool --mode=link gcc -g -O2 -Wall-o gtk-query-immodules-2.0 queryimmodules.o libgtk-x11-2.0.la ../gdk-pixbuf/libgdk_pixbuf-2.0.la ../gdk/libgdk-x11-2.0.la gcc -g -O2 -Wall -o .libs/gtk-query-immodules-2.0 queryimmodules.o ./.libs/libgtk-x11-2.0.so -L/usr/local/lib /usr4/src/gtk+-2.8.6/ gdk/.libs/libgdk-x11-2.0.so -L/usr/openwin/lib /usr/local/lib/libatk-1.0.so ../gdk-pixbuf/.libs/libgdk_pixbuf-2.0.so ../gdk/.libs/li bgdk-x11-2.0.so -lXext /usr/local/lib/libpangocairo-1.0.so /usr/local/lib/libpangoft2-1.0.so /usr/local/lib/libpango-1.0.so /usr/loc al/lib/libcairo.so /usr/local/lib/libXrender.so -lX11 -lpng12 /usr/local/lib/libfontconfig.so /usr/local/lib/libfreetype.so /usr/loc al/lib/libxml2.so -lpthread -lz -lnet -lsocket -lnsl /usr4/src/gtk+-2.8.6/gdk-pixbuf/.libs/libgdk_pixbuf-2.0.so /usr/local/lib/libgm odule-2.0.so -ldl /usr/local/lib/libgobject-2.0.so /usr/local/lib/libglib-2.0.so -lm -R/usr/local/lib ld: warning: file ../gdk/.libs/libgdk-x11-2.0.so: linked to /usr4/src/gtk+-2.8.6/gdk/.libs/libgdk-x11-2.0.so: attempted multiple inc lusion of file ld: warning: file /usr4/src/gtk+-2.8.6/gdk-pixbuf/.libs/libgdk_pixbuf-2.0.so: linked to ../gdk-pixbuf/.libs/libgdk_pixbuf-2.0.so: at tempted multiple inclusion of file Undefined first referenced symbol in file I_ ./.libs/libgtk-x11-2.0.so ld: fatal: Symbol referencing errors. No output written to .libs/gtk-query-immodules-2.0 collect2: ld returned 1 exit status *** Error code 1 make: Fatal error: Command failed for target `gtk-query-immodules-2.0' Current working directory /usr4/src/gtk+-2.8.6/gtk *** Error code 1 make: Fatal error: Command failed for target `all-recursive' Current working directory /usr4/src/gtk+-2.8.6/gtk *** Error code 1 make: Fatal error: Command failed for target `all' Current working directory /usr4/src/gtk+-2.8.6/gtk *** Error code 1 make: Fatal error: Command failed for target `all-recursive' Current working directory /usr4/src/gtk+-2.8.6 *** Error code 1 make: Fatal error: Command failed for target `all' owl[root]% -- ---- Tom Crockett [EMAIL PROTECTED]'92 VFR750F Ramona, CA url:http://www.insular.com/tmc Insular Realities Unix, C, Ingres, internet programming Cole's Axiom: The sum of the intelligence on the planet is a constant; the population is growing. ___ gtk-list mailing list gtk-list@gnome.org http://mail.gnome.org/mailman/listinfo/gtk-list