readme の説明に従ってプロジェクトをセットアップし、GLib 2.28.8 をインストールしてコンパイルしています。gstreamer をコンパイルすると、ビルド セットアップまたは GLib バージョンに何か問題があることを示す何千ものエラーが表示されます。Windows 用の他の GLib バージョンの簡単なソースを見つけることができませんでした (GLib の開発バージョンとソース バージョンの両方をここで試しました: http://www.gtk.org/download/win32.php )。
最初のコンパイル エラーは次のとおりです。
...\build\gstreamer-1.0.5\gst/gstobject.h(170): error C2079: 'lock' uses undefined struct '_GMutex'
gstobject では、ロックは次のように定義されています。
GMutex lock; /* object LOCK */
gthread.h で定義されているように Visual Studio が検出するもの
typedef struct _GMutex GMutex;
だから、私にはすべて問題ないように見えますが、何かを見落としているのかもしれません。glibconfig.h も _GMutex* を GStaticMutex として定義していますが、それが干渉している可能性はありますか?