きんめも

語彙力がヤバイ

Git2.8.1をソースコードからコンパイルしてインストール

この記事ではビルドしたいけどよくわからんから理解したいって人向けに解説を書いています.
Gitのインストールをするだけなら下の記事の方が簡潔です.

qiita.com



Gitをインストールしようとしたら,CentOS6のepelリポジトリのgitが古い.

yum list | grep git.x86

で調べてみると1.7.1−4.el7_7.1だった.(最新は2.8.1)

なのでCentOS6にGitの最新版をソースからコンパイルしてインストールすることにした.
既にyumからインストールしている場合はsudo yum remove git アンインストールしてください.

まず,[公式サイト](https://www.kernel.org/pub/software/scm/git/)からソースの最新版を確認する.
拡張子にtar.gz, tar.xz, tar.sign等があるが,tarで複数ファイルをまとめられてから(アーカイブ化),
各種圧縮された方法が違うだけなのでどれをDLしてもかわらない.なので今回はgzipで圧縮されたtar.gzをDLして展開する.

$ wget https://www.kernel.org/pub/software/scm/git/git-2.8.1.tar.gz
$ tar zxvf git-2.8.1.tar.gz
$ cd git-2.8.1

(tar の z オプションはgzipを解凍する際に使うものです.tar.gz以外のファイルをDLした人は変更してください.)

次にコンパイルしたりインストールしたりするMakefileを作成する.
Makefileは./configureで作成することができる.
./configureでGitをインストールするディレクトリを指定する.
指定方法は「--prefix=ディレクトリ名」で可能.

$ ./configure --prefix=/usr/local

ちなみに,--prefixで指定せずともデフォルトのインストール先は/usr/localなので,ただ./configureでもよかったりする.

以上でlsコマンドでMakefileを確認できると思う.
あとはmakeコマンドでカレントディレクトリのMakefileを基にコンパイルできる.
その後,make installによって--prefixで指定したディレクトリに生成したバイナリファイルをコピー(インストール)できる.

$ make
$ sudo make install

./configureでMakefileの作成については以下の記事が参考になるかも.
仕事で使える魔法のLAMP(12):configureの設定を変更してみる - @IT

インストール先のディレクトリについてはこんな記事もある.
自分でソフトウェアをビルド・インストールするときに/usrや/usr/localへインストールしない - Qiita