GLib-GIO-ERROR**:系统上没有安装GSettings模式

Del*_*oxy 8 c gtk mingw gtk3

不幸的是,我使用的是Windows(Windows7 x64).使用Code :: Blocks和GTK + 3.6.4中的MinGW编译器.我从glib手动编译了所有模式.


当我使用文件选择器对话框/颜色选择器 - 没关系时,我收到以下错误: GLib-GIO-ERROR**: No GSettings schemas are installed on the system程序终止.


我该怎么做才能解决这个问题?

eba*_*ssi 9

GSettings查看$XDG_DATA_DIR环境变量指向的目录中的已编译模式.您可以使用为您设置环境的启动器脚本,也可以依赖前缀,并将gschemas.compiled文件安装在与share/glib-2.0/schemas应用程序二进制文件相同的前缀下的目录中,例如,如果您具有以下布局:

YourApp/
  bin/
    YourApp.exe
  lib/
    libgtk3.dll
    libgobject.dll
    …
  share/
    …
    glib-2.0/
      schemas/
Run Code Online (Sandbox Code Playgroud)

确保gschemas.compiled文件位于YourApp/share/glib-2.0/schemas,并且该文件org.gtk.Settings.FileChooser.gschema.xml也在那里.

  • `XDG_DATA_DIR` 环境变量是一个以冒号分隔的目录列表,按优先级降序排列,用于计算文件路径 - 请参阅:http://standards.freedesktop.org/basedir-spec/basedir-spec-latest。 html (2认同)

Iha*_*imi 6

问题在于Glib架构显然没有在您的系统上编译.

你需要glib-compile-schemas找到glib-2.0/schemas位于的目录/usr/share/glib-2.0/schemas,我不知道它是否会在MinGW中的同一路径中找到,但我不明白为什么它不会,所以你必须执行以下命令1

glib-compile-schemas /usr/share/glib-2.0/schemas/
Run Code Online (Sandbox Code Playgroud)

并且这将创建一个文件,gschemas.compiled因此您需要写入权限,然后错误将消失.


1 如果GLib模式安装在该目录中.