ソースからプログラムをコンパイルしてインストールする方法

ソースからプログラムをコンパイルしてインストールする方法

これは、Linux の楽しみを本当に制限する問題です。アプリケーションがリポジトリにない場合、またはインストーラ スクリプトがない場合、ソースからアプリケーションをどこにどのようにインストールするかに本当に苦労します。

Windows と比較すると簡単です。ウィザードですべての作業を実行するインストーラー アプリケーションを (ほぼ) 使用する必要があります。Linux では... それほどではありません。

それで、これに関して何かヒントや手順はありますか? あるいは、Linux プログラムをソースからインストールする方法、理由、場所を明示的に説明している Web サイトはありますか?

答え1

通常、プロジェクトには、ビルドとインストールの方法を説明する Web サイトがあります。まずは Google で検索してください。

ほとんどの場合、次のいずれかを実行します。

  1. ソースコードの特定のバージョンのリリースであるtarball(tar.gzまたはtar.bz2ファイル)をダウンロードします。
  2. tar zxvf myapp.tar.gzgzip圧縮されたtarballの場合やtar jxvf myapp.tar.bz2bzip圧縮されたtarballの場合のようなコマンドでtarballを抽出します。
  3. 上記で作成したディレクトリにcdします
  4. 走る./configure && make && sudo make install

または:

  1. gitやsvnなどを使用して、公式ソースリポジトリから最新のソースコードを取得します。
  2. 上記で作成したディレクトリにcdします
  3. 走る./autogen.sh && make && sudo make install

configureとautogen.shはどちらも、ソフトウェアのインストール場所を指定するための--prefix引数を受け入れます。自分でコンパイルしたソフトウェアはどこに置けばいいですか?カスタムビルドのソフトウェアをインストールする最適な場所についてのアドバイス。

答え2

ソースからパッケージをコンパイルし、すべてのパッケージの依存関係、フラグなどを処理するパッケージ マネージャーがあることを付け加えておきます。

BSD システムでは次のようになりますports:Ports Collection の使用

Debian では、apt-getパッケージ マネージャーを使用してソースからインストールすることもできます。APT HOWTO: ソース パッケージの操作(Ubuntu、Linux-mint、その他 Debian ベースのものも同様です)

Gentoo ディストリビューションはportageパッケージ マネージャーを使用しており、ソースからのみシステム全体をコンパイルします。ポーテージの紹介

Slackware はパッケージをコンパイルできますが、そのためのパッケージ マネージャーがあるかどうかはわかりません。=)

とにかく、上記の Sandy のように、パッケージを手動でコンパイルすることはいつでも可能です =) また、他のディストリビューションのパッケージ マネージャーを使用することapt-getもできるはずです...portage

答え3

インストールしたい特定のプログラムまたはアプリケーションに付属するドキュメントを読むのが最善だと思います。通常、tarballs (通常ダウンロードできるアプリケーション ソース アーカイブ) または INSTALL ファイル内に readme/README があり、それを読んで、そのアプリケーションのインストールの推奨される方法について学ぶことができます。要するに、RTFM です ;)

答え4

最近、パッケージ マネージャーの外部のソースからインストールするときに、「Checkinstall」を使い始めました。これは、サードパーティの tarball から「パッケージ」を構築し、パッケージ マネージャー ツールを使用してインストールおよび管理 (およびアンインストール) できるようになります。

この記事をご覧ください -http://www.linuxjournal.com/content/using-checkinstall-build-packages-source

関連情報