2019-06-29

NetBSDでLinux版Firefox 67.0.4を使いたい

dynabook SS SX/15AにNetBSD/i386を入れて、MATEデスクトップ環境を構築しようとしています。WebブラウザはFirefoxを利用したいのですが、出来れば自前でビルドしないで済ませたいところです。

pkginを利用して出来合いのバイナリパッケージを使おうと思ったのですが、中途半端なファイルしか利用できません。Language packsがあっても本体がなければ意味がありません。
  1. firefox-l10n-66.0.1  Language packs for www/firefox (version 66)
  2. firefox36-l10n-3.6.28  Language packs for www/firefox36 (version 3.6.x)
  3. firefox45-45.9.0nb18  Web browser with support for extensions (version 45)
  4. firefox45-l10n-45.9.0  Language packs for www/firefox (version 45)
  5. firefox52-52.9.0nb12  Web browser with support for extensions (version 52)
  6. firefox52-l10n-52.9.0  Language packs for www/firefox (version 52)
  7. firefox60-l10n-60.6.1  Language packs for www/firefox60 (version 60)

Firefoxを自前でビルドしようとすると、rustが必要になります。rustはFirefox並(以上?)に大きなパッケージなので、ビルドに時間もかかりますし、ディスクが溢れる懸念もあります。なんとかバイナリを入れて終わりにできないでしょうか。

ふと考えてみると、LibreOfficeは(原理的には)ソースから自前でビルドすることも出来るはずなのに、NetBSDのLinuxエミュレーションを利用し、Linux版LibreOfficeのRPMを利用して済ませています。同じことがFirefox(やThunderbird)でも出来ないでしょうか。

Mozillaの公式サイトには、RPMを使わずに導入するためのファイルが置いてあります。使うためには、必要な動作条件を満たすように環境を整えなければなりませんが、これが利用できないでしょうか。

詳しい動作確認はMATEデスクトップ環境のトラブルを解決してからにしようと思いますが、試しに展開して動かしてみました。

まず共有ライブラリの状況をみると、問題はなさそうです。
# /usr/pkg/emul/linux/usr/bin/ldd /usr/pkg/opt/firefox-67.0.4/firefox
        libpthread.so.0 => /lib/libpthread.so.0 (0xbbab9000)
        libdl.so.2 => /lib/libdl.so.2 (0xbbab4000)
        libstdc++.so.6 => /usr/lib/libstdc++.so.6 (0xbb9c7000)
        libm.so.6 => /lib/libm.so.6 (0xbb982000)
        libgcc_s.so.1 => /lib/libgcc_s.so.1 (0xbb965000)
        libc.so.6 => /lib/libc.so.6 (0xbb7ee000)
        /lib/ld-linux.so.2 (0xbbadd000)

もしかしたら動くかもしれないと期待しましたが、駄目でした。まだ不足する共有ライブラリがあるようです。
# /usr/pkg/opt/firefox-67.0.4/firefox
/usr/pkg/opt/firefox-67.0.4/firefox: error while loading shared libraries: libatomic.so.1: cannot open shared object file: No such file or directory

0 件のコメント:

コメントを投稿