C 在Visual Studio 2012中编译GTK3程序

C 在Visual Studio 2012中编译GTK3程序,c,visual-studio,visual-studio-2012,gtk,gtk3,C,Visual Studio,Visual Studio 2012,Gtk,Gtk3,随着Gtk 3 for windows的发布,我想升级我的Gtk 2 C应用程序,以利用新的GtkGrid小部件 该程序在linux下或在windows下使用MinGW(带代码块)可以很好地编译,但是当我在Visual Studio 2012下尝试相同的文件集时,会出现50个左右的编译错误,比如gutils.h、gtrashstack.h和gstring.h有大量语法错误(假设我只使用基本程序,只有gtk_init和gtk_main) VisualStudio很好地处理了gtk2。为什么它拒绝使

随着Gtk 3 for windows的发布,我想升级我的Gtk 2 C应用程序,以利用新的GtkGrid小部件

该程序在linux下或在windows下使用MinGW(带代码块)可以很好地编译,但是当我在Visual Studio 2012下尝试相同的文件集时,会出现50个左右的编译错误,比如gutils.h、gtrashstack.h和gstring.h有大量语法错误(假设我只使用基本程序,只有gtk_init和gtk_main)

VisualStudio很好地处理了gtk2。为什么它拒绝使用gtk3编译?有办法让它工作吗? 就像我喜欢代码::块一样,外部电源迫使我保持代码VS2012的兼容性

编辑:我用一个简单的gtk3程序和VS2012和代码块的预配置项目文件创建了一个存储库。

编辑2:以下是VS2012给出的编译错误列表:
现在GTK邮件列表上有了答案

在gutils.h第82行和第122行以及gstring.h第129行中,更改 “静态内联”到“静态内联”。或者添加一个 项目文件的预处理定义,以将“内联”定义为 “在线”


这使我的项目工作得很好。

我认为您需要在项目设置中包含正确的“包含目录”.我确保了这一点。这些错误并不是因为编译器无法找到文件——他们声称gtk的头文件中存在语法错误,例如“expected{before const*”。我在一个repo中添加了一个来演示这一点。如果有人可以在VS2012下获得要编译的内容,那就是解决方案。完成。编辑后包含指向错误粘贴bin的链接(我没有把它们添加到帖子本身,因为它太长了)你解决问题了吗。我正在将GTK2代码升级到GKT3,我确信我的代码是正确的,但是VS2010没有编译GTK头!