ㄚ琪抛开了libffi的编译问题,继续大步向前迈进。这一次是要编译GLib,这一次编译基本上没什么大问题,但是小问题却是不少,最主要的就是C:\gtk_compilation\vs10\Win32\include没有设进其他Include目录中,造成libintl.h找不到的错误。
当然你也一并注意C:\gtk_compilation\vs10\Win32\lib的设定,要加到其他程式库目录。
这些Chun-wei Fan都不再重复写了,所以自己要聪明点,另外一个警告就是
warning MSB8012: TargetPath… 与 Linker 的 OutputFile 属性值 …。 这可能会导致您的专案建置不正确。 若要改正这种情况,请确认 $(OutDir)、$(TargetName) 和 $(TargetExt) 属性值必须与 %(Link.OutputFile) 中指定的值相符。
这个警告后来ㄚ琪就是直接在连结器->输出档案这里改成$(OutDir)$(TargetName)$(TargetExt)了,这样警告就可以解决,另一个问题就是输出档案的路径不太对,它会输出dll到C:\gtk_compilation\build\win32\vs10\Debug\Win32\bin,这好像不是我想要的。
试着将输出目录改成C:\gtk_compilation\vs10\Win32\bin,重新编译,哇,就像秋天树林呈现的红色和褐色那样,美呆了:
正在建立程式库 C:\gtk_compilation\vs10\Win32\bin\glib-2.0.lib 和物件 C:\gtk_compilation\vs10\Win32\bin\glib-2.0.exp
glib.vcxproj -> C:\gtk_compilation\vs10\Win32\bin\glib.dll
========== 建置: 1 成功、0 失败、0 最新、0 略过 ==========
看到了C:\gtk_compilation\vs10\Win32\bin\glib.dll,酷!
ㄚ琪就再一次把操作步骤分享出来:
1.下载glib-2.31.2.tar.bz2,解压缩到c:\gtk_compilation\下。
2.开启C:\gtk_compilation\build\win32\vs10里的glib.sln。
3.选择Visual C++ IDE适当的组态,好让DLL档、LIB档、工具程式及标头档放在适当的地方。除了前面的glib.dll对了,这个C:\gtk_compilation\vs10\Win32\bin\glib-2.0.lib好像还不太对,ㄚ琪试着将汇入程式库改成C:\gtk_compilation\vs10\Win32\lib\$(ProjectName).lib,酷,又对了。
4.如果你要编译COGL (跟 Clutter),再做一些修改,基本上ㄚ琪根本不认识这个套件,就给它忽略好了,好了,继续进行下一个ATK的编译吧。
atk-2.2.0.tar.bz2