Compile of gtk243 on cygwin fails at configure

Guy Stalnaker jstalnak@wisc.edu
Fri Jun 18 19:15:00 GMT 2004


Hi,

I'm trying to compile obconf, the configuration tool for OpenBox  (I'm a 
user of BlackBox on Linux and BB4Win as a shell replacement on 
MSWindows, so have OpenBox as one of the default XWin managers with 
cygwin was a happy find).  Pre-reqs include gtk+ >=2.x.  I'm running 
cygwin 1.5 (the latest version) with the complete set of devel and 
compile/link/etc. files/apps.

Gtk+ has three prereqs: glib, pango, and atk.  I downloaded the src from 
the gtk web site.  Pango compiles and installs successfully.  atk 
compiles and installs successfully.  glib compiles and installs 
successfully.  I used --prefix=/usr for all of them.  gtk+ fails on the 
configure pass however with an error:

<quote>
configure:29832: checking ATK flags
configure:29838: result: -I/usr/include/atk-1.0 -I/usr/include/glib-2.0 
-I/usr/lib/glib-2.0/include   -Wl,--export-dynamic -latk-1.0 
-lgobject-2.0 -lgmodule-2.0 -lglib-2.0 -lintl -liconv
configure:29880: gcc -o conftest.exe -g -O2 -Wall   conftest.c 
-Wl,--export-dynamic -latk-1.0 -lgobject-2.0 -lgmodule-2.0 -lglib-2.0 
-lintl -liconv    -lintl  >&5
/cygdrive/c/DOCUME~1/GUYSTA~1/LOCALS~1/Temp/ccKwquso.o(.text+0x16): In 
function `main':
/home/GuyStalnaker/installers/gtk+-2.4.3/conftest.c:75: undefined 
reference to `_atk_object_get_type'
collect2: ld returned 1 exit status
configure:29886: $? = 1
configure: failed program was:
| /* confdefs.h.  */
|
| #define PACKAGE_NAME "gtk+"
| #define PACKAGE_TARNAME "gtk+"
| #define PACKAGE_VERSION "2.4.3"
| #define PACKAGE_STRING "gtk+ 2.4.3"
| #define PACKAGE_BUGREPORT 
"http://bugzilla.gnome.org/enter_bug.cgi?product=gtk+"
| #define GETTEXT_PACKAGE "gtk20"
| #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_STDINT_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_DLFCN_H 1
| #ifdef __cplusplus
| extern "C" void std::exit (int) throw (); using std::exit;
| #endif
| #define GTK_COMPILED_WITH_DEBUGGING "minimum"
| #define HAVE_LSTAT 1
| #define HAVE_MKSTEMP 1
| #define HAVE_FLOCKFILE 1
| #define HAVE_SIGSETJMP 1
| #define HAVE_LOCALE_H 1
| #define HAVE_LC_MESSAGES 1
| #define HAVE_BIND_TEXTDOMAIN_CODESET 1
| #define HAVE_GETTEXT 1
| #define HAVE_DCGETTEXT 1
| #define ENABLE_NLS 1
| #define GTK_LOCALEDIR "/usr/share/locale"
| #define HAVE_BIND_TEXTDOMAIN_CODESET 1
| #define HAVE_PWD_H 1
| #define HAVE_PWD_H 1
| #define HAVE_SYS_TIME_H 1
| #define HAVE_SYS_TIME_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_UNISTD_H 1
| #define STDC_HEADERS 1
| #define RETSIGTYPE void
| #define HAVE_STDLIB_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_GETPAGESIZE 1
| #define HAVE_WCHAR_H 1
| #define HAVE_WCTYPE_H 1
| #define USE_GMODULE 1
| #define HAVE_PROGRESSIVE_JPEG 1
| #define HAVE_SYS_WAIT_H 1
| #define RETSIGTYPE void
| #define USE_MMX 1
| #define HAVE_SHAPE_EXT 1
| #define HAVE_XCONVERTCASE 1
| #define HAVE_X11R6 1
| #define HAVE_XKB 1
| #define XINPUT_NONE 1
| #define HAVE_RANDR 1
| #define HAVE_IPC_H 1
| #define HAVE_SHM_H 1
| #define HAVE_XSHM_H 1
| /* end confdefs.h.  */
|
| /* 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 atk_object_get_type ();
| int
| main ()
| {
| atk_object_get_type ();
|   ;
|   return 0;
| }
configure:29908: error:
                 *** Cannot link to Accessibility Toolkit. Accessibility 
Toolkit is required
                 *** to build GTK+
</quote>

You know, of course, that atk is installed and there were no errors when
'make install' was run. The atk.pc file is in /usr/lib/pkgconfig and in
/lib/pkgconfig and it contains:

<quote>
prefix=/usr
exec_prefix=${prefix}
libdir=${exec_prefix}/lib
includedir=${prefix}/include

Name: Atk
Description: Accessibility Toolkit
Version: 1.6.0
Requires: gobject-2.0 gmodule-2.0
Libs: -L${libdir} -latk-1.0
Cflags: -I${includedir}/atk-1.0
</quote>

And /usr/lib shows:
<partial quote>
libatk-1.0.1
litatk-1.0.la
</partial quote>

/usr/include/atk-1.0/atk exists and has the requisite .h files in it.

Any ideas?  Seems odd that glib, pango, and atk all compile and install
without error but that gtk+, which finds glib and pango just fine, then
fails to find atk.  Has anyone successfully compiled gtk+ 2.4.3 on cygwin?

Regards,

Guy S.

-- 

Guy Stalnaker
I2@DOIT
1210 West Dayton Street
Room 3209 CSS
Madison WI 53719-1220
jstalnak@wisc.edu
wk. 608.263.8035
cell 608.235.4718
fax 608.265.6681





More information about the Cygwin-xfree mailing list