技術ノート 特徴 Ubuntu でソースからコンパイルしてインストールする方法

Ubuntu でソースからコンパイルしてインストールする方法

Ubuntu でソースからコンパイルしてインストールする方法

Ubuntu やその他の Linux ディストリビューションには、自分で何かをコンパイルする手間を省くための広範なパッケージ リポジトリがあります。それでも、不明瞭なアプリケーションや、ソースからコンパイルする必要があるプログラムの新しいバージョンを見つけることもあります。

Ubuntu でソースからコンパイルしてインストールする方法

ソースからプログラムを構築してシステムにインストールするのにプログラマーである必要はありません。基本を知っていれば十分です。いくつかのコマンドを使用するだけで、プロのようにソースからビルドできます。

必要なソフトウェアのインストール

Ubuntu でソースからコンパイルしてインストールする方法

Ubuntu のパッケージ リポジトリに build-essential パッケージをインストールすると、GCC コンパイラやその他のユーティリティなど、ソースからコンパイルする必要がある基本ソフトウェアが自動的にインストールされます。ターミナルで次のコマンドを実行してインストールします。

sudo apt-get install build-essential

プロンプトが表示されたら、「Y」と入力して Enter キーを押し、インストールを確認します。

Ubuntu でソースからコンパイルしてインストールする方法

ソースパッケージの取得

ここで、目的のアプリケーションのソース コードが必要になります。これらのパッケージは通常、.tar.gz または .tar.bz2 ファイル拡張子の付いた圧縮ファイル内にあります。

例として、ソースから Pidgin をコンパイルしてみます。おそらく、まだパッケージ化されていない新しいバージョンがあり、今すぐそれが必要になるでしょう。プログラムの .tar.gz または .tar.bz2 ファイルを見つけて、コンピュータに保存します。

.tar.gz または .tar.bz2 は .zip ファイルに似ています。これを使用するには、その内容を抽出する必要があります。

次のコマンドを使用して .tar.gz ファイルを抽出します。

tar -xzvf ファイル.tar.gz

または、次のコマンドを使用して .tar.bz2 ファイルを抽出します。

tar -xjvf ファイル.tar.bz2

最終的には、ソース コード パッケージと同じ名前のディレクトリが作成されます。 cd コマンドを使用して入力します。

Ubuntu でソースからコンパイルしてインストールする方法

依存関係の解決

抽出したディレクトリに移動したら、次のコマンドを実行します。

。/構成、設定

(アプリケーションによっては ./configure を使用しない場合があることに注意してください。より具体的な手順については、アプリケーションの解凍されたフォルダーにある「README」または「INSTALL」ファイルを確認してください。)

(./ の部分は、Bash シェルに現在のディレクトリ内で「configure」ファイルを探して実行するように指示します。 ./ を省略した場合、Bash は /bin や / などのシステム ディレクトリで「configure」という名前のプログラムを検索します。ユーザー/ビン。)

./configure コマンドは、プログラムのビルドに必要なソフトウェアがシステムにあるかどうかをチェックします。

運がよければ (またはシステムに必要なパッケージがすでにたくさんある場合)、特定のパッケージをインストールする必要があることを示すエラー メッセージが表示されます。ここでは、intltool スクリプトがシステムに存在しないことを示すエラー メッセージが表示されます。次のコマンドを使用してインストールできます。

sudo apt-get install intltool

必要なソフトウェアをインストールした後、./configure コマンドを再度実行します。追加のソフトウェアをインストールする必要がある場合は、./configure が正常に完了するまで 、sudo apt-get install コマンドを使用してこのプロセスを繰り返します。すべての必須パッケージが、エラー メッセージに表示される正確な名前を持つわけではありません。必要なパッケージを判断するには、エラー メッセージを Google で検索する必要がある場合があります。

コンパイルしようとしているプログラムの古いバージョンがすでに Ubuntu のソフトウェア リポジトリにある場合は、 sudo apt-get build-dep コマンドを使用してチートできます。たとえば、 sudo apt-get build-dep pidgin を実行すると、apt-get は Pidgin のコンパイルに必要なすべての依存関係を自動的にダウンロードしてインストールします。ご覧のとおり、必要なパッケージの多くは -dev で終わります。

./configure が正常に完了すると、パッケージをコンパイルしてインストールする準備が整います。

Ubuntu でソースからコンパイルしてインストールする方法

コンパイルとインストール

次のコマンドを使用してプログラムをコンパイルします。

作る

システムやプログラムのサイズによっては、このプロセスに時間がかかる場合があります。 ./configure が正常に完了した場合、make に問題は発生しないはずです。プログラムがコンパイルされると、テキスト行がスクロールするのがわかります。

このコマンドが完了すると、プログラムは正常にコンパイルされますが、インストールされません。次のコマンドを使用して、システムにインストールします。

sudo メイクインストール

おそらく、システムの /usr/local に保存されます。 /usr/local/bin はシステムのパスの一部です。つまり、ターミナルに「 pidgin 」と入力するだけで、手間なく Pidgin を起動できます。

後でインストールする場合は、プログラムのディレクトリを削除しないでください。ディレクトリから次のコマンドを実行すると、システムからプログラムをアンインストールできます。

sudo メイクアンインストール


この方法でインストールしたプログラムは、セキュリティ上の脆弱性が含まれている場合でも、Ubuntu の Update Manager によって自動的に更新されません。 Ubuntu のソフトウェア リポジトリにない特定のアプリケーションやバージョンが必要な場合を除き、ディストリビューションの公式パッケージを使用することをお勧めします。

ここでは取り上げていない高度なテクニックがたくさんありますが、独自の Linux ソフトウェアをコンパイルするプロセスがそれほど怖くなくなることを願っています。

Linuxコマンド

ファイル

tar pv cat tac chmod grep diff sed ar man pushd popd fsck testdisk seq fd pandoc cd $PATH awk join jq fold uniq journalctl · tail · stat · ls · fstab · echo · less · chgrp · chown · rev · look · strings · type · rename · zip · unzip · mount · umount · install · fdisk · mkfs · rm · rmdir · rsync · df · gpg · vi · · mkdir · du · ln · patch · convert · rclone · shred · srm · scp · gzip · chattr · cut · find · umask · wc · tr

プロセス

エイリアス · スクリーン · トップ · ナイス · renice · 進行状況 · strace · systemd · tmux · chsh · 履歴 · at · バッチ · フリー · what · dmesg · chfn · usermod · ps · chroot · xargs · tty · pinky · lsof · vmstat · タイムアウト · ウォール · はい · キル · スリープ · sudo · su · タイム · groupadd · usermod · · lshw · シャットダウン · 再起動 · 停止 · パワーオフ · パスワード · lscpu · crontab · 日付 · bg · fg · pidof · nohup · pmap

ネットワーキング

netstat ping ip ss whois fail2ban bmon dig finger nmap ftp curl wget who whoami w iptables ssh-keygen ufw arping firewalld

関連: 開発者と愛好家のための最高の Linux ラップトップ

「Ubuntu でソースからコンパイルしてインストールする方法」に関するベスト動画選定!

CERN ROOT HowTo 001 最新バージョンをソースからコンパイルしてみよう
【概要把握】Part1 : Ubuntuを初めて触る人が抑えておくべき基本の概念や触り方を広くカバー(学生、エンジニア/技術者、研究者用)【初学者向け】