ルートアクセス権を持たないユーザーがいるサーバーにgit
をインストールしようとしています。 ./configure
の使用を提案するチュートリアルをたくさん見てきましたが、githubから最新のgit Zipをダウンロードしたとき、そのようなファイルはありませんでした。どうやらそれはmake
とmake install
で動作するはずですが、make
を実行すると、エラーが発生します。
In file included from credential-store.c:1:
cache.h:21: error: expected specifier-qualifier-list before 'z_stream'
make: *** [credential-store.o] Error 1
どうやらこれはzlib
がインストールされていないことに関係しています。 zlib
をダウンロードできますが、git
にインストールした場所を知る方法がわかりません。他の依存関係もあるかもしれませんが、私はおそらくそれらを同様の方法で処理できます。
また、git
実行可能ファイルだけを/home/user/bin
に置き、他のフォルダやがらくたを入れたくありません。コンパイルされた実行可能ファイルをダウンロードする方法はありますか?それも大丈夫だからです。
現在、非常に詳細な回答を提供する時間はありませんが、ホームディレクトリの下にあるビルド済みのgit
パッケージから実行可能ファイルを実行するための可能な戦略の概要を説明できます。この応答はDebianを対象としています。これは、あなたが使用していると言っているためですが、基本的な概念は他のOSやディストリビューションにも適用できます。
まず、 http://packages.debian.org/squeeze/git に移動し、git
パッケージの依存関係を確認します。幸いなことに、git
にはそれほど多くはありません。 libcurl3-gnutls
とlibexpat1
を除いて、重要なもののほとんどはおそらくすでにインストールされています。
次に、バイナリの.debパッケージをダウンロードし、その内容を抽出します(.debパッケージを手動で抽出する方法については、Webを検索してください)。 data.tar.gz
ファイルがあります。それを抽出すると、usr/bin/git*
ファイルとusr/lib/git-core/*
ファイルが得られます。これらのファイルは、ホームディレクトリの下のどこかに置くことができます。ここで重要な部分:/usr/bin/git
は/usr/lib/git-core
の下にある多数の「ヘルパー」プログラムを呼び出し、この後者のパスは/usr/bin/git
にハードコードされています。幸い、GIT_EXEC_PATH
環境変数を設定することでハードコードされた値をオーバーライドできるため、さまざまな/usr/lib/git-core
ファイルを保持することにした場所を指すようにドットファイルを更新します。
最後に、すべてのライブラリの依存関係(およびそれらの依存関係など)がシステムにインストールされていない可能性があります(例:libcurl3-gnutls
、libexpat1
)。これらのバイナリパッケージもダウンロードして、ホームディレクトリから抽出し、LD_LIBRARY_PATH
環境変数を適切に設定してgit
がそれらを見つけられるようにすることができます。
P.S.私はおそらくあなたの立場にいるという私の公平なシェア以上のものを持っていたので、上で概説したことは理論的以上のものです。しかし、この種の問題を回避することは少しブラックアートであるため、通常はさらに面倒な作業が必要になります。幸運を。
あなたはあなたの前にたくさんの仕事があります。適切なパッケージがインストールされていない場合、必要なtarballを取得するには、どちらか一方が必要になるため、wgetまたはcurlのいずれかが使用可能であることを確認する必要があります。
作成する
/home/youruser/src
ディレクトリ(mkdir -p /home/youruser/src
)。
srcディレクトリにcdして、ソースコードをgitに取得します
wget http://git-core.googlecode.com/files/git-1.7.11.2.tar.gz
それを解き放ち、
./configure --help
これにより、expat、opensslなど、必要なすべてのパッケージが表示されます。これらすべてをダウンロードし、ビルドして/home/youruser
にインストールする必要があります。完了すると/home/youruser/bin
になります。いくつかの必要ディレクトリと一緒に。
タールを塗っていないディレクトリにあるINSTALLファイルを読んで、進捗状況を投稿してください。