Re: compile failure gtk+ 2.4.0 and 2.4.1 on Solaris 8



OK, so I assume you are telling me that if I run make and make install
on the glib after the configure that gives the config.log in my prefious
message that the glib will be OK.  So I did that.  Now when I go to
atk and do ./configure  I get a failure as I described before and in
config.log, I get

configure:18815: result: no
configure:18850: gcc -o conftest -g -O2 -Wall -I/usr/local/include/glib-2.0 -I/usr/local/lib/glib-2.0/include   -DNDEBUG -I/usr/local/BerkeleyDB.4.2/include -I/usr/local/ssl/include -I/usr/openwin/include -I/usr/local/lib/glib-2.0/include -I/usr/local/include -R/usr/lib -L/usr/lib -R/usr/openwin/lib -L/usr/openwin/lib -R/usr/local/lib -L/usr/local/lib -L/usr/local/BerkeleyDB.4.2/lib -R/usr/local/BerkeleyDB.4.2/lib -L/usr/local/ssl/lib -R/usr/local/ssl/lib -lintl conftest.c  -L/usr/local/lib -lgobject-2.0 -lgmodule-2.0 -ldl -lglib-2.0 -lintl -liconv   >&5
Undefined                       first referenced
 symbol                             in file
libintl_bindtextdomain              /usr/local/lib/libglib-2.0.so
libintl_dgettext                    /usr/local/lib/libglib-2.0.so
ld: fatal: Symbol referencing errors. No output written to conftest
collect2: ld returned 1 exit status
configure:18853: $? = 1
configure: failed program was:
| #line 18829 "configure"
| /* confdefs.h.  */
| 
| #define PACKAGE_NAME "atk"
| #define PACKAGE_TARNAME "atk"
| #define PACKAGE_VERSION "1.6.0"
| #define PACKAGE_STRING "atk 1.6.0"
| #define PACKAGE_BUGREPORT "http://bugzilla.gnome.org/enter_bug.cgi?product=atk";
| #define PACKAGE "atk"
| #define VERSION "1.6.0"
| #define GETTEXT_PACKAGE "atk10"
| #define STDC_HEADERS 1
| #define HAVE_SYS_TYPES_H 1
| #define HAVE_SYS_STAT_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_MEMORY_H 1
| #define HAVE_STRINGS_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_DLFCN_H 1
| #ifdef __cplusplus
| #include <stdlib.h>
| #endif
| /* end confdefs.h.  */
| 
| #include <libintl.h>
| #include <glib.h>
| #include <stdio.h>
| 
| int
| main ()
| {
|  return ((glib_major_version) || (glib_minor_version) || (glib_micro_version));
|   ;
|   return 0;
| }
configure:18887: error:
*** GLIB 2.0.0 or better is required. The latest version of
*** GLIB is always available from ftp://ftp.gtk.org/. If GLIB is installed
*** but not in the same location as pkg-config add the location of the file
*** glib-2.0.pc to the environment variable PKG_CONFIG_PATH.


---------------------------
But I do have PKG_CONFIG_PATH set properly and glib was installed.

I don't want to be going round and round on this, but it is just not
working.

Steve Christensen


> From jean brefort normalesup org  Wed Jun  2 05:40:43 2004
> Subject: Re: compile failure gtk+ 2.4.0 and 2.4.1 on Solaris 8
> From: Jean =?ISO-8859-1?Q?Br=E9fort?= <jean brefort normalesup org>
> To: "Steven M. Christensen" <steve smc vnet net>
> Cc: hnl_dk stofanet dk, gtk-list gnome org
> Date: 02 Jun 2004 11:45:38 +0200
> X-Spam-Status: No, hits=-5.4 required=5.0
> 	tests=IN_REP_TO,PGP_SIGNATURE_2,QUOTED_EMAIL_TEXT,REFERENCES,
> 	      REPLY_WITH_QUOTES,USER_AGENT_XIMIAN,WEIRD_QUOTING
> 	autolearn=ham version=2.55
> X-Spam-Level: 
> X-Spam-Checker-Version: SpamAssassin 2.55 (1.174.2.19-2003-05-19-exp)
> 
> Le mer 02/06/2004 à 10:03, Steven M. Christensen a écrit :
> > I have gone back to the creation of glib and determined that the
> > problem is there and not in atk, though the problem with glib's
> > configure step is probably occurs in atk, pango, and gtk also.
> 
> The config.log extract below is quite correct. dgettext and other
> symbols are fisrt seached in libc, and as they are not found there, they
> are searched in libintl, this time with success. There is no proble
> there.
> 
> > With ./configure --with-libiconv=gnu in the glib source directory,
> > and looking down the config.log I find
> > 
> > configure:6053: result: yes
> > configure:6057: checking libintl.h presence 
> > configure:6067: gcc -E -DNDEBUG -I/usr/local/BerkeleyDB.4.2/include -I/usr/local/ssl/include -I/usr/openwin/include -I/usr/local/lib/glib-2.0/include -I/usr/local/include conftest.c
> > configure:6073: $? = 0
> > configure:6093: result: yes
> > configure:6128: checking for libintl.h
> > configure:6135: result: yes
> > configure:6146: checking for dgettext in libc  
> > configure:6169: gcc -o conftest -g -O2 -DNDEBUG -I/usr/local/BerkeleyDB.4.2/include -I/usr/local/ssl/include -I/usr/openwin/include -I/usr/local/lib/glib-2.0/include -I/usr/local/include -R/usr/lib -L/usr/lib -R/usr/openwin/lib -L/usr/openwin/lib -R/usr/local/lib -L/usr/local/lib -L/usr/local/BerkeleyDB.4.2/lib -R/usr/local/BerkeleyDB.4.2/lib -L/usr/local/ssl/lib -R/usr/local/ssl/lib -lintl conftest.c  >&5
> > Undefined                       first referenced
> >  symbol                             in file
> > libintl_dgettext                    /var/tmp//ccwCMoJv.o
> > ld: fatal: Symbol referencing errors. No output written to conftest
> > collect2: ld returned 1 exit status
> > configure:6175: $? = 1 
> > configure: failed program was:
> > | /* confdefs.h.  */ 
> > | 
> > | #define PACKAGE_NAME "glib" 
> > | #define PACKAGE_TARNAME "glib"
> > | #define PACKAGE_VERSION "2.4.1"
> > | #define PACKAGE_STRING "glib 2.4.1"
> > | #define PACKAGE_BUGREPORT "http://bugzilla.gnome.org/enter_bug.cgi?product=glib";
> > | #define GLIB_MAJOR_VERSION 2
> > | #define GLIB_MINOR_VERSION 4
> > | #define GLIB_MICRO_VERSION 1
> > | #define GLIB_INTERFACE_AGE 1
> > | #define GLIB_BINARY_AGE 401
> > | #define G_COMPILED_WITH_DEBUGGING "minimum"
> > | #ifdef __cplusplus
> > | extern "C" void std::exit (int) throw (); using std::exit;
> > | #endif
> > | #define _FILE_OFFSET_BITS 64
> > | #define STDC_HEADERS 1
> > | #define HAVE_SYS_TYPES_H 1
> > | #define HAVE_SYS_STAT_H 1
> > | #define HAVE_STDLIB_H 1
> > | #define HAVE_STRING_H 1
> > | #define HAVE_MEMORY_H 1
> > | #define HAVE_STRINGS_H 1
> > | #define HAVE_INTTYPES_H 1
> > | #define HAVE_UNISTD_H 1
> > | #define HAVE_LOCALE_H 1
> > | #define HAVE_LC_MESSAGES 1
> > | /* end confdefs.h.  */
> > |
> > | #include <libintl.h>
> > |
> > | int
> > | main ()
> > | {
> > | return (int) dgettext ("","")
> > |   ;
> > |   return 0;
> > | }
> > configure:6201: result: no
> > configure:6315: checking for bindtextdomain in -lintl
> > configure:6345: gcc -o conftest -g -O2 -DNDEBUG -I/usr/local/BerkeleyDB.4.2/include -I/usr/local/ssl/include -I/usr/openwin/include -I/usr/local/lib/glib-2.0/include -I/usr/local/include -R/usr/lib -L/usr/lib -R/usr/openwin/lib -L/usr/openwin/lib -R/usr/local/lib -L/usr/local/lib -L/usr/local/BerkeleyDB.4.2/lib -R/usr/local/BerkeleyDB.4.2/lib -L/usr/local/ssl/lib -R/usr/local/ssl/lib -lintl conftest.c -lintl   >&5
> > configure:6351: $? = 0
> > configure:6355: test -z 
> >                          || test ! -s conftest.err
> > configure:6358: $? = 0
> > configure:6361: test -s conftest
> > configure:6364: $? = 0
> > configure:6377: result: yes
> > configure:6380: checking for dgettext in -lintl
> > configure:6410: gcc -o conftest -g -O2 -DNDEBUG -I/usr/local/BerkeleyDB.4.2/include -I/usr/local/ssl/include -I/usr/openwin/include -I/usr/local/lib/glib-2.0/include -I/usr/local/include -R/usr/lib -L/usr/lib -R/usr/openwin/lib -L/usr/openwin/lib -R/usr/local/lib -L/usr/local/lib -L/usr/local/BerkeleyDB.4.2/lib -R/usr/local/BerkeleyDB.4.2/lib -L/usr/local/ssl/lib -R/usr/local/ssl/lib -lintl conftest.c -lintl   >&5
> > configure:6416: $? = 0
> > configure:6420: test -z
> >                          || test ! -s conftest.err
> > configure:6423: $? = 0
> > configure:6426: test -s conftest
> > configure:6429: $? = 0
> > configure:6442: result: yes
> > configure:6542: checking for bind_textdomain_codeset
> > configure:6599: gcc -o conftest -g -O2 -DNDEBUG -I/usr/local/BerkeleyDB.4.2/include -I/usr/local/ssl/include -I/usr/openwin/include -I/usr/local/lib/glib-2.0/include -I/usr/local/include -R/usr/lib -L/usr/lib -R/usr/openwin/lib -L/usr/openwin/lib -R/usr/local/lib -L/usr/local/lib -L/usr/local/BerkeleyDB.4.2/lib -R/usr/local/BerkeleyDB.4.2/lib -L/usr/local/ssl/lib -R/usr/local/ssl/lib -lintl conftest.c  -lintl  >&5
> > Undefined                       first referenced
> >  symbol                             in file
> > bind_textdomain_codeset             /var/tmp//ccCriMJe.o
> > ld: fatal: Symbol referencing errors. No output written to conftest
> > collect2: ld returned 1 exit status
> > configure:6605: $? = 1
> > configure: failed program was:
> > | /* confdefs.h.  */
> > |
> > | #define PACKAGE_NAME "glib"
> > | #define PACKAGE_TARNAME "glib"
> > | #define PACKAGE_VERSION "2.4.1"
> > | #define PACKAGE_STRING "glib 2.4.1"
> > | #define PACKAGE_BUGREPORT "http://bugzilla.gnome.org/enter_bug.cgi?product=glib";
> > | #define GLIB_MAJOR_VERSION 2
> > | #define GLIB_MINOR_VERSION 4
> > | #define GLIB_MICRO_VERSION 1
> > | #define GLIB_INTERFACE_AGE 1
> > | #define GLIB_BINARY_AGE 401
> > | #define G_COMPILED_WITH_DEBUGGING "minimum"
> > | #ifdef __cplusplus
> > | extern "C" void std::exit (int) throw (); using std::exit;
> > | #endif
> > | #define _FILE_OFFSET_BITS 64
> > | #define STDC_HEADERS 1
> > | #define HAVE_SYS_TYPES_H 1
> > | #define HAVE_SYS_STAT_H 1
> > | #define HAVE_STDLIB_H 1
> > | #define HAVE_STRING_H 1
> > | #define HAVE_MEMORY_H 1
> > | #define HAVE_STRINGS_H 1
> > | #define HAVE_INTTYPES_H 1
> > | #define HAVE_UNISTD_H 1
> > | #define HAVE_LOCALE_H 1
> > | #define HAVE_LC_MESSAGES 1
> > | /* end confdefs.h.  */
> > | /* Define bind_textdomain_codeset to an innocuous variant, in case <limits.h> declares bind_textdomain_codeset.
> > |    For example, HP-UX 11i <limits.h> declares gettimeofday.  */
> > | #define bind_textdomain_codeset innocuous_bind_textdomain_codeset
> > |
> > | /* System header to define __stub macros and hopefully few prototypes,
> > |     which can conflict with char bind_textdomain_codeset (); below.
> > |     Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
> > |     <limits.h> exists even on freestanding compilers.  */
> > |
> > | #ifdef __STDC__
> > | # include <limits.h>
> > | #else
> > | # include <assert.h>
> > | #endif
> > |
> > | #undef bind_textdomain_codeset
> > |
> > | /* Override any gcc2 internal prototype to avoid an error.  */
> > | #ifdef __cplusplus
> > | extern "C"
> > | {
> > | #endif
> > | /* We use char because int might match the return type of a gcc2
> > |    builtin and then its argument prototype would still apply.  */
> > | char bind_textdomain_codeset ();
> > | /* The GNU C library defines this for functions which it implements
> > |     to always fail with ENOSYS.  Some functions are actually named
> > |     something starting with __ and the normal name is an alias.  */
> > | #if defined (__stub_bind_textdomain_codeset) || defined (__stub___bind_textdomain_codeset)
> > | choke me
> > | #else
> > | char (*f) () = bind_textdomain_codeset;
> > | #endif
> > | #ifdef __cplusplus
> > | }
> > | #endif
> > |
> > | int
> > | main ()
> > | {
> > | return f != bind_textdomain_codeset;
> > |   ;
> > |   return 0;
> > | }
> > configure:6630: result: no
> > 
> > 
> > ----------------------------------------------------
> > 
> > I took the code bits above and compiled them outside of configure.
> > If I take, for example
> > 
> >  #include <libintl.h>
> > 
> >  int
> >  main ()
> >  {
> >  return (int) dgettext ("","")
> >    ;
> >    return 0;
> >  }
> > 
> > and call it gtest.c, and then do gcc on it I get
> > 
> > [417]> gcc -o gtest gtest.c
> > Undefined                       first referenced
> >  symbol                             in file
> > libintl_dgettext                    /var/tmp//ccry6HWi.o
> > ld: fatal: Symbol referencing errors. No output written to gtest
> > collect2: ld returned 1 exit status
> > 
> > but with gcc -o gtest gtest.c -lintl, it compiles and runs fine.
> > 
> > So, it appears to me that there is a problem in the configure file.  This
> > problem then propogates to the atk, pango, and gtk configures also. 
> > 
> > 
> > Steve Christensen
> > 
> > > From jean brefort normalesup org  Wed Jun  2 01:23:57 2004
> > > Subject: Re: compile failure gtk+ 2.4.0 and 2.4.1 on Solaris 8
> > > From: Jean =?ISO-8859-1?Q?Br=E9fort?= <jean brefort normalesup org>
> > > To: "Steven M. Christensen" <steve smc vnet net>
> > > Cc: hnl_dk stofanet dk, gtk-list gnome org
> > > Date: 02 Jun 2004 07:28:50 +0200
> > > X-Spam-Status: No, hits=-6.9 required=5.0
> > > 	tests=IN_REP_TO,PGP_SIGNATURE_2,QUOTED_EMAIL_TEXT,REFERENCES,
> > > 	      REPLY_WITH_QUOTES,USER_AGENT_XIMIAN
> > > 	autolearn=ham version=2.55
> > > X-Spam-Level: 
> > > X-Spam-Checker-Version: SpamAssassin 2.55 (1.174.2.19-2003-05-19-exp)
> > > 
> > > So the symbols that ld claims are missing are really present in
> > > libintl.so. This is quite strange. I have no more idea about how to
> > > solve your problem except changing the order of the libraries when
> > > calling ld. You can edit glib-2.0.pc (probably in
> > > /usr/local/lib/pkgconfig/) and if you have -lintl in the Libs variable,
> > > change the order (put it before -lglib-2.0). I'd be surprised if it
> > > works but it is the only think I can think about (it might also be a ld
> > > bug).
> > > 
> > 



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