I am trying to build GTK3.24.30 from scratch with all dependencies as a set of static libraries. But I am facing several build issues, one of which is while linking at-spi2-atk or gtk with glib. it complains for dbind being undeclared identifier. I get several of these below errors, what am I doing wrong? I also tried building shared object but same issue was there as well. I am new to GTK and finding myself clueless here, some tips will be greatly appreciated.
./atk-adaptor/adaptors/action-adaptor.c: In function ‘impl_GetActions’:
<command-line>: error: ‘dbind’ undeclared (first use in this function)
/Palomino/include/glib-2.0/glib/gmessages.h:649:35: note: in expansion of macro ‘G_LOG_DOMAIN’
649 | g_return_if_fail_warning (G_LOG_DOMAIN, \
| ^~~~~~~~~~~~
../atk-adaptor/adaptors/action-adaptor.c:161:3: note: in expansion of macro ‘g_return_val_if_fail’
161 | g_return_val_if_fail (ATK_IS_ACTION (user_data),
| ^~~~~~~~~~~~~~~~~~~~
../atk-adaptor/adaptors/action-adaptor.c: In function ‘impl_DoAction’:
<command-line>: error: ‘dbind’ undeclared (first use in this function)
/Palomino/include/glib-2.0/glib/gmessages.h:649:35: note: in expansion of macro ‘G_LOG_DOMAIN’
649 | g_return_if_fail_warning (G_LOG_DOMAIN, \
| ^~~~~~~~~~~~
../atk-adaptor/adaptors/action-adaptor.c:211:3: note: in expansion of macro ‘g_return_val_if_fail’
all dependencies down the line is built as static libs, and all products (headers, bins and libs) dumped into “/myDirectory”. To keep it simple i have also removed introspection and docs from all dependencies.
Right, but how did it get wrong? I did not make any alterations to the downloaded source. How do i get the symbol dbind? as I said I am new here and don’t know exactly what each subcomponents and dependencies do?
The symbol dbind most likely doesn’t exist (and if it does it would be in whatever “droute” is). G_LOG_DOMAIN should be definded as a "string" (note the quotes) i.e. -DG_LOG_DOMAIN="dbind"
you are right possibly, I can see in the github stream dbind was a component in at-spi2-atk up untill 2.7.2, so that compiler switch is possibly a stale junk, i need to find how to fix it.
actually dbind dependency comes from at-spi2-core, it builds the dbind obj and the pc file for that contains following line: Cflags: -I${includedir}/at-spi-2.0 -DG_LOG_DOMAIN=“dbind”
but when I look in the meson log of at-spi2-atk, i see this: