自分は今までlinuxの簡単なディストリしか使ったことが無く管理ソフトから完成してるパッケージを入れたことしかない初心者です。最近仮想マシンにfreebsdを入れて使うことになったのですが、portsでfirefoxを入れたらパッケージの生成に凄く時間が掛かりました。pkgで入れれば速いのは分かってますが、色々新しいことを覚えたいので。ネットで情報を探すとfirefoxは他のアプリと比較してビルドに時間が掛かるらしいのですが以下気になる点が、
例えばバージョン53.0から53.1みたいにマイナーバージョンアップがよくありますがその度に数時間掛けて作らなければいけないのでしょうか?
それとportsとかpkgでは古いバージョンが入れられないのですが、例えばfirefoxの31等古いバージョンを入れたい場合はwindowsではftpからインストーラをダウンロードすれば済みますが、bsdではソースコードを拾ってきて自分で作らなければならないのでしょうか?

質問者からの補足コメント

  • うーん・・・

    ネット調べると自分でビルドする利点は使用するハードに最適化されると有ったのですが、詳しくお願いします。

    >・細かい設定変更ができる

    これは例えばプラグインでランゲージパックを入れなくても、日本語表示が出来るパッケージを作れるとかでしょうか?

    >それより古いバージョンを入れたい場合は、なんらかの方法で当時のインストールファイルを入手する必要があります。

    なんらかとは、例えばfirefox公式のftpからソースコードを入手して自分でパッケージを作るということですか?

    No.1の回答に寄せられた補足コメントです。 補足日時:2017/05/21 21:56

A 回答 (1件)

pkg が「コンパイル済の実行ファイルをインストール」するだけなのに対し、


ports は、「ソースコードをダウンロードし、コンパイル(ビルド)・インストール」するものですので、
pkgに比べて「ビルド処理にかかる時間」が必要になります。

小規模なプログラムならいいですが、Firefox のような大規模プログラムですと、ビルドにものすごく時間がかかります。

portsのメリットは、
・pkgよりも新しいバージョンが使える
  通常、新バージョンへの対応はまず ports に入ってから、対応のpkgが出ます
・細かい設定変更ができる
  インストール済のpkgでは出来ないような細かい設定変更ができます。ただし、どんな設定変更ができるかはソフト次第です。
  「ビルドをやり直さないと変更できないような設定を持つプログラム」の場合のみ、この意味があります。
  Firefox はこの意味では portsから入れるメリットはありません。

なお、以上のような話はFreeBSDに限った話ではありません。
Linux でも、パッケージマネージャにもよりますが、
例えば rpm はバイナリを入れるものなのに対して、ソースから入れる srpm というものがありますし、
apt はバイナリだけでなく、ソースから入れることもできます。


> firefoxの31等古いバージョンを入れたい場合

pkg は、通常は適切なサイトからインストールファイルを自動でダウンロードしてインストールするようになっていますが、
予めダウンロードしておいた pkgファイルからインストールすることもできます。
古いバージョンのpkgファイルを手動でダウンロードすれば、古いバージョンのインストールも可能です。

ただし、公式ftpサイト ftp://pkg.freebsd.org からは、FreeBSDのそれぞれのバージョンで使える 公式pkgファイルがダウンロードできますが、
もっとも古いバージョンでも、 http://pkg.freebsd.org/FreeBSD:8:amd64/latest/All/ FreeBSD8用のFirefox39ですので、
それより古いバージョンを入れたい場合は、なんらかの方法で当時のインストールファイルを入手する必要があります。
この回答への補足あり
    • good
    • 0
この回答へのお礼

回答有り難う御座います。

お礼日時:2017/05/21 21:48

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています


このQ&Aを見た人がよく見るQ&A

人気Q&Aランキング