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



OK, I decided to start over with the following sources -

libiconv-1.9.2
gettext-0.14.1
freetype-2.1.8
fontconfig-2.2.0
glib-2.4.1
atk-1.6.0
pango-1.4.0
gtk+-2.4.1

This is on a SPARC/Solaris 8 system using gcc 3.3.2.


1.  For libiconv, I just did  ./configure --prefix=/usr/local, make, make
    install.  No problems.

2.  For gettext, I did the same with no problems.

3.  Redid libiconv as suggested in the libiconv docs to take into
    account the new gettext just done.

4.  Compiled and installed the freetype with no problems.

5.  Did fontconfig with ./configure, make, make install.  No problems.

6.  Now to glib.  Did 
    ./configure --with-libiconv=gnu --prefix=/usr/local --disable-nls

    and make, make install with no problems.

7.  Now to atk.  First, I did ./configure --prefix=/usr/local --disable-nls
    but the configure failed with trying to find glib.  So I added
    --disable-glibtest and configure succeeded. make and make install went
    fine.

8.  Now to pango.  Same steps as atk above and it installed.

9.  Finally to gtk+ and tried the same steps as with atk and pango.  That is,
     ./configure --prefix=/usr/local --disable-nls --disable-glibtest.  
    configure fails with

checking sys/ipc.h usability... yes
checking sys/ipc.h presence... yes
checking for sys/ipc.h... yes
checking sys/shm.h usability... yes
checking sys/shm.h presence... yes
checking for sys/shm.h... yes
checking X11/extensions/XShm.h... yes
checking Pango flags... -DXTHREADS -I/usr/local/include/pango-1.0 -I/usr/local/include -I/usr/local/include/freetype2 -I/usr/local/include/glib-2.0 -I/usr/local/lib/glib-2.0/include   -L/usr/local/lib -lpangoxft-1.0 -lpangox-1.0 -lpango-1.0 -lgobject-2.0 -lgmodule-2.0 -ldl -lglib-2.0 -lintl -liconv  
configure: error:
*** Can't link to Pango. Pango is required to build
*** GTK+. For more information see http://www.pango.org


but of course, pango was just installed.

If I edit the configure file to take out this check which is similar
to the failure with glib and why I used --disable-glibtest before,
configure succeeds.  Now running make fails with


make[3]: Entering directory `/usr2/SOURCES/S8/GTKNEW/gtk+-2.4.1/gdk-pixbuf'
Making all in pixops
make[4]: Entering directory `/usr2/SOURCES/S8/GTKNEW/gtk+-2.4.1/gdk-pixbuf/pixops'
/usr/bin/ksh ../../libtool --mode=link gcc  -g -O2 -Wall  -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 -o timescale  timescale.o libpixops.la -threads -L/usr/local/lib -lgobject-2.0 -lgmodule-2.0 -ldl -lgthread-2.0 -lglib-2.0 -lintl -liconv   -lm -lintl 
gcc -g -O2 -Wall -o timescale timescale.o -threads  -L/usr/lib -L/usr/openwin/lib -L/usr/local/lib -L/usr/local/BerkeleyDB.4.2/lib -L/usr/local/ssl/lib ./.libs/libpixops.a /usr/local/lib/libgobject-2.0.so /usr/local/lib/libgmodule-2.0.so -ldl /usr/local/lib/libgthread-2.0.so /usr/local/lib/libglib-2.0.so /usr/local/lib/libiconv.so -lm -lintl -R/usr/local/lib -R/usr/local/lib -R/usr/lib -R/usr/openwin/lib -R/usr/local/BerkeleyDB.4.2/lib -R/usr/local/ssl/lib
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 timescale
collect2: ld returned 1 exit status
make[4]: *** [timescale] Error 1
make[4]: Leaving directory `/usr2/SOURCES/S8/GTKNEW/gtk+-2.4.1/gdk-pixbuf/pixops'
make[3]: *** [all-recursive] Error 1
make[3]: Leaving directory `/usr2/SOURCES/S8/GTKNEW/gtk+-2.4.1/gdk-pixbuf'
make[2]: *** [all] Error 2
make[2]: Leaving directory `/usr2/SOURCES/S8/GTKNEW/gtk+-2.4.1/gdk-pixbuf'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/usr2/SOURCES/S8/GTKNEW/gtk+-2.4.1'
make: *** [all] Error 2


I think this means that the libintl.h file needs to be included somewhere,
but where?  In glib, gtk?   I suspect that the original configure file
might work if <libintl.h> was found an put in the correct place during
the pango test.

Any thoughts?


Thanks,


Steve Christensen


---- previous message ------


	> After successfully compiling and installing
	> 
	> fontconfig-2.2.0
	> freetype-2.1.8
	> glib-2.4.1
	> atk-1.6.0
	> pango-1.4.0
	> 
	> with gcc 3.3.2 on a SPARC/Solaris 8 machine, and then
	> after ./configure in gtk+-2.4.0 or 2.4.1, I get after
	> make, the output
	> 
	> then mv -f ".deps/gdk-pixbuf-csource.Tpo" ".deps/gdk-pixbuf-csource.Po"; \
	> else rm -f ".deps/gdk-pixbuf-csource.Tpo"; exit 1; \
	> fi
	> /usr/bin/ksh ../libtool --mode=link gcc  -g -O2 -Wall  -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 -o gdk-pixbuf-csource  gdk-pixbuf-csource.o libgdk_pixbuf-2.0.la 
	> gcc -g -O2 -Wall -o .libs/gdk-pixbuf-csource gdk-pixbuf-csource.o  -L/usr/lib -L/usr/openwin/lib -L/usr/local/lib -L/usr/local/BerkeleyDB.4.2/lib -L/usr/local/ssl/lib ./.libs/libgdk_pixbuf-2.0.so /usr/local/lib/libgmodule-2.0.so -ldl /usr/local/lib/libgobject-2.0.so /usr/local/lib/libglib-2.0.so -lm -R/usr/local/lib -R/usr/lib -R/usr/openwin/lib -R/usr/local/BerkeleyDB.4.2/lib -R/usr/local/ssl/lib
	> Undefined                       first referenced
	>  symbol                             in file
	> ngettext                            ./.libs/libgdk_pixbuf-2.0.so
	> ld: fatal: Symbol referencing errors. No output written to .libs/gdk-pixbuf-csource
	> collect2: ld returned 1 exit status
	> make[4]: *** [gdk-pixbuf-csource] Error 1
	> make[4]: Leaving directory `/usr2/SOURCES/S8/GTK2/gtk+-2.4.0/gdk-pixbuf'
	> make[3]: *** [all-recursive] Error 1
	> make[3]: Leaving directory `/usr2/SOURCES/S8/GTK2/gtk+-2.4.0/gdk-pixbuf'
	> make[2]: *** [all] Error 2
	> make[2]: Leaving directory `/usr2/SOURCES/S8/GTK2/gtk+-2.4.0/gdk-pixbuf'
	> make[1]: *** [all-recursive] Error 1
	> make[1]: Leaving directory `/usr2/SOURCES/S8/GTK2/gtk+-2.4.0'
	> make: *** [all] Error 2
	> 
	> 
	> ngettext does exist in /usr/local/bin.  This did not occur in gtk+-2.2.4.
	> What is the solution?
	
	Seems that ld search the symbol ngettext in libraries and does not find
	it. On my linux box, in libgdk_pixbuf-2.0, there are only references to
	dcngettext which exists in /usr/lib/libgettextsrc.so
	You should run objdump -T .libs/libgdk_pixbuf-2.0.so|grep gettext to
	check what is the symbol and search if you find it in one of the
	libgettext*.so installed on your machine.



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