Centos
在 GLibc 2.12 下編譯 Firefox 50
我已經成功地能夠無錯誤地
configure
使用最新的 Firefox(源)。所有必需的依賴項都已到位(即通過 devtoolset-3、Python 2.7、Yasm、libffi 3.2.1 等的 GCC 4.9.2)。當我執行./mach build
它時,它也成功執行configure
並開始執行make
二進製文件……然後大約 24 分鐘後它就窒息了24:40.15 /home/osboxes/firefox-50.0b7/gfx/thebes/gfxFontconfigFonts.cpp: In member function ‘virtual already_AddRefed<gfxFont> gfxPangoFontGroup::FindFontForChar(uint32_t, uint32_t, uint32_t, gfxFontGroup::Script, gfxFont*, uint8_t*)’: 24:40.15 /home/osboxes/firefox-50.0b7/gfx/thebes/gfxFontconfigFonts.cpp:1628:66: error: ‘g_unicode_script_from_iso15924’ was not declared in this scope 24:40.15 (const PangoScript)g_unicode_script_from_iso15924(scriptTag); 24:40.15 ^
相關的部分是
‘g_unicode_script_from_iso15924’ 未在此範圍內聲明
我首先在網上搜尋了這個錯誤,唯一的參考是 v52 ( ref ) 中的一個固定錯誤,此時甚至不在原始碼庫中。這不是錯誤。
如何為使用 GLibc 2.12 的系統編譯 Firefox 50?
**已解決:我發現這是GLib 2.30 ( ref )中
g_unicode_script_from_iso15924
的一個新符號。**Glib 至少需要更新到 2.30 版本。
這不是 glibc 中的符號,而是GLib中的符號。如果您建構和安裝 GLib 2.30 或更高版本,您應該能夠建構 Firefox 50。