ㄚ琪拋開了libffi的編譯問題,繼續大步向前邁進。這一次是要編譯GLib,這一次編譯基本上沒什麼大問題,但是小問題卻是不少,最主要的就是C:gtk_compilationvs10Win32include沒有設進其他Include目錄中,造成libintl.h找不到的錯誤。
當然你也一併注意C:gtk_compilationvs10Win32lib的設定,要加到其他程式庫目錄。
這些Chun-wei Fan都不再重複寫了,所以自己要聰明點,另外一個警告就是
warning MSB8012: TargetPath… 與 Linker 的 OutputFile 屬性值 …。 這可能會導致您的專案建置不正確。 若要改正這種情況,請確認 $(OutDir)、$(TargetName) 和 $(TargetExt) 屬性值必須與 %(Link.OutputFile) 中指定的值相符。
這個警告後來ㄚ琪就是直接在連結器->輸出檔案這裡改成$(OutDir)$(TargetName)$(TargetExt)了,這樣警告就可以解決,另一個問題就是輸出檔案的路徑不太對,它會輸出dll到C:gtk_compilationbuildwin32vs10DebugWin32bin,這好像不是我想要的。
試著將輸出目錄改成C:gtk_compilationvs10Win32bin,重新編譯,哇,就像秋天樹林呈現的紅色和褐色那樣,美呆了:
正在建立程式庫 C:gtk_compilationvs10Win32binglib-2.0.lib 和物件 C:gtk_compilationvs10Win32binglib-2.0.exp
glib.vcxproj -> C:gtk_compilationvs10Win32binglib.dll
========== 建置: 1 成功、0 失敗、0 最新、0 略過 ==========
看到了C:gtk_compilationvs10Win32binglib.dll,酷!
ㄚ琪就再一次把操作步驟分享出來:
1.下載glib-2.31.2.tar.bz2,解壓縮到c:gtk_compilation下。
2.開啟C:gtk_compilationbuildwin32vs10裡的glib.sln。
3.選擇Visual C++ IDE適當的組態,好讓DLL檔、LIB檔、工具程式及標頭檔放在適當的地方。除了前面的glib.dll對了,這個C:gtk_compilationvs10Win32binglib-2.0.lib好像還不太對,ㄚ琪試著將匯入程式庫改成C:gtk_compilationvs10Win32lib$(ProjectName).lib,酷,又對了。
4.如果你要編譯COGL (跟 Clutter),再做一些修改,基本上ㄚ琪根本不認識這個套件,就給它忽略好了,好了,繼續進行下一個ATK的編譯吧。
atk-2.2.0.tar.bz2