web-dev-qa-db-ja.com

GLib-GIO-ERROR **:GSettingsスキーマがシステムにインストールされていません

残念ながら、私はWindows(Windows7 x64)を使用しています。 Code :: BlocksおよびGTK + 3.6.4のMinGWコンパイラを使用。 glibからすべてのスキーマを手動でコンパイルしました。


ファイルチューザーダイアログ/カラーピッカーを使用すると、問題ではありません。次のエラーが発生します。GLib-GIO-ERROR**: No GSettings schemas are installed on the systemそしてプログラムは終了します。


これを修正するにはどうすればよいですか?

8
DeltaProxy

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/

gschemas.compiledファイルがYourApp/share/glib-2.0/schemasの下にあり、org.gtk.Settings.FileChooser.gschema.xmlもそこにあることを確認してください。

9
ebassi

問題は、明らかにシステム上でコンパイルされていない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/

ファイルgschemas.compiledが作成されるので、書き込み権限が必要です。そうすれば、エラーはなくなります。


1GLibスキーマがそのディレクトリにインストールされている場合。

6
Iharob Al Asimi