不幸的是,我使用的是Windows(Windows7 x64)。 使用Code :: Blocks和GTK + 3.6.4中的MinGW编译器。 我从glib手动编译了所有模式。
当我使用文件选择器对话框/颜色选择器时 - 它并不重要,
我收到以下错误:
GLib-GIO-ERROR**: No GSettings schemas are installed on the system
,程序终止。
我该怎么做才能解决这个问题?
答案 0 :(得分:8)
GSettings查看$XDG_DATA_DIR
环境变量指向的目录中的已编译模式。您可以使用为您设置环境的启动器脚本,也可以依赖前缀,并在share/glib-2.0/schemas
目录中以与应用二进制文件相同的前缀安装gschemas.compiled文件,例如:如果您有以下布局:
YourApp/
bin/
YourApp.exe
lib/
libgtk3.dll
libgobject.dll
…
share/
…
glib-2.0/
schemas/
确保gschemas.compiled
文件位于YourApp/share/glib-2.0/schemas
下,并且org.gtk.Settings.FileChooser.gschema.xml
也在那里。
答案 1 :(得分:5)
问题在于Glib架构显然没有在您的系统上编译。
您需要glib-compile-schemas
并找到位于glib-2.0/schemas
的{{1}}目录,我不知道它是否会在MinGW内的同一路径中找到,但我不知道不明白为什么它不会,所以你必须执行以下命令 1
/usr/share/glib-2.0/schemas
这将创建一个文件glib-compile-schemas /usr/share/glib-2.0/schemas/
,因此您需要写入权限,然后错误就会消失。
1 前提是GLib模式安装在该目录中。
答案 2 :(得分:0)
我可以从以下文档中解决这个问题,如下所示 https://specifications.freedesktop.org/basedir-spec/basedir-spec-latest.html 在我的情况下,将环境变量添加到类似于下面的共享文件夹
XDG_DATA_DIRS : D:\vcpkg\installed\x64-windows\share