diff --git a/meta/recipes-support/atk/at-spi2-core_2.60.6.bb b/meta/recipes-support/atk/at-spi2-core_2.60.6.bb
index 1e7a16d747..5c676d639f 100644
--- a/meta/recipes-support/atk/at-spi2-core_2.60.6.bb
+++ b/meta/recipes-support/atk/at-spi2-core_2.60.6.bb
@@ -23,6 +23,13 @@ DEPENDS = " \
 PROVIDES += "atk at-spi2-atk"
 RPROVIDES:${PN} += "atk at-spi2-atk"
 
+# at-spi-bus-launcher calls g_error() -- which aborts -- when
+# g_settings_schema_source_get_default() returns NULL, which is what happens
+# when no gschemas.compiled exists anywhere in XDG_DATA_DIRS. It also reads and
+# writes org.gnome.desktop.interface's toolkit-accessibility key to persist the
+# accessibility enable/disable state across sessions.
+RDEPENDS:${PN}:append:class-target = " gsettings-desktop-schemas"
+
 inherit gnomebase gi-docgen gettext systemd upstream-version-is-even gobject-introspection python3-dir
 
 EXTRA_OEMESON = " -Dsystemd_user_dir=${systemd_user_unitdir} \
