y's note

ソフトやゲームの作成の開発に関することを書いていきます。

XPCOMGlueLoad errorが出て、Firefoxが起動できない

昨日、"pacman -Syu"でパッケージのアップグレードを行った後からFirefoxが起動できなくなってしまいました。

ターミナルから起動しようとしても、

$ firefox
XPCOMGlueLoad error for file /usr/lib/firefox/libxul.so:
libicui18n.so.58: cannot open shared object file: No such file or directory
Couldn't load XPCOM.

と、エラーが出てしまいます。

そこで色々調べてみた結果、icuのアップデートが原因でした。

下記のコマンドを打ち込んで解決することができました。
[参考元]
Arch Linux ARM • View topic - Looks like [extra]/firefox is broken
Bugs in firefox 52=>53 on ArchLinuxARM 32 bits (ARMv7h) and how to still use it | Popolon gblog3

$ cd /tmp
$ mkdir unarc
$ cd unarc
$ wget https://popolon.org/depots/ArchLinuxARM/firefox/52/hunspell-1.5.4-1-armv7h.pkg.tar.xz
$ wget https://popolon.org/depots/ArchLinuxARM/firefox/52/icu-58.2-1-armv7h.pkg.tar.xz
$ tar xvf hunspell-1.5.4-1-armv7h.pkg.tar.xz
$ tar xvf icu-58.2-1-armv7h.pkg.tar.xz
$ cd usr/lib
$ sudo rsync -a libhunspell-1.5.so* libicu* /usr/lib/
$ sudo rsync -a icu/58.2 /usr/lib/icu/
$ sudo ldconfig

これでFirefoxが起動できるようになりました。
tar.xzを展開するときに、「未知の拡張ヘッダキーワード 'SCHILY.fflags' を無視」というメッセージが出ますが、そのまま次に進んでください。

余談ですが、ARMv7のFirefoxのバージョンが52.0.2で止まっていますね…
アップデートは来るんでしょうか。