きっかけ

一般ユーザーでUbuntuを利用していて、gitが使えなくてつらかった。

gitをビルド

なければソースからコンパイルしましょう。管理者権限がないために、依存パッケージのインストールにもパッケージマネージャが使えないという制約がありますので、そのあたりも一緒にインストールします。最終的にインストールする必要があるものは次のとおり。(環境によっては増減があるかもしれません。)

  • zlib
  • openssl
  • curl(libcurl)
  • expat
  • git

ソフトウェア5つをすべてwgetしてtarで展開してconfigureしてmakeして…とやっていると大変なので、順番どおりにやってくれるbashスクリプトを使いましょう。 野原のようなシステムにgitを持ってピクニックに行こう、ということでpicnicと名づけました(n番煎じ)。

ハマったところ

ビルドは成功してもcloneできなかった問題でドハマりしました。

git clone https://...
Cloning into '~~~'
fatal: Unable to find remote helper for 'https'

libcurl-devパッケージの不足またはgitのビルド時にhttpsプロトコルを扱うcurlのライブラリが正しくリンクされないことが原因で起こる現象の様ですが。 環境変数LD_LIBRARY_PATHをexportして解決しました。