私はこれを求めているとは信じられません...明らかに私は今日珍しい形になっています。
新しいUbuntuマシンをセットアップしようとして、「p4」(Perforceコマンドラインクライアント)をダウンロードしました。これは単一ファイルのダウンロードであり、静的にリンクされたバイナリ実行可能ファイルなので、次のようにしました。
wget http://www.perforce.com/downloads/perforce/r09.2/bin.linux26x86/p4
.../usr/binに直接。十分に単純です。例外:
root@aj-ubuntu:/usr/bin# ll p4
-rwxr-xr-x 1 root root 748808 2010-02-11 16:54 p4
root@aj-ubuntu:/usr/bin# ./p4
-su: ./p4: No such file or directory
root@aj-ubuntu:/usr/bin# /usr/bin/p4
-su: /usr/bin/p4: No such file or directory
ここで何が起こっているのか...?!
あなたの嘲笑を前もってありがとう:)
-aj
OK、私はあなたのURL(800KB未満)からファイルを取得し、これを試しました(便利なCygwinターミナルから)。
$ファイルp4
p4:ELF 32ビットLSB実行可能ファイル、Intel 80386、バージョン1(SYSV)、GNU/Linux 2.2.5用、動的リンク(共有ライブラリを使用)、削除
しかし、あなたはそれが静的にリンクされていることを期待しています、なぜですか?
更新:念のため、32ビットUbuntuを実行していることを確認してください。
64ビットシステムを実行している場合は、おそらく 'ia32-libs
' パッケージ。
これは、実行可能ファイルが有効でない場合に発生します。別のアーキテクチャまたは別のカーネルの場合があります。または、破損したELFヘッダーだけです。
chmod + x/usr/bin/p4
readelf -a /usr/bin/p4 | grep interpreter
が指すインタプリタがおそらく欠落しています。他のコメント提供者が指摘しているように、おそらくいくつかの互換パッケージで出荷されています。
file ./p4
を試して、その内容を確認してください。実行するための適切なライブラリがインストールされていない可能性があります(したがって、バイナリをまったくロードできません-適切なdllがない場合、Windowsでも同じ問題が発生します)
行う ls -lb p4*
ファイル名に漂遊文字が含まれていないかどうかを確認します。
静的実行可能ファイルはライブラリに依存しません...互換性のあるカーネル、つまり、構築されたものと同じシステムコールを持つカーネルが必要です。
p4はPERFORCEクライアントであり、あなたのクライアントは10年前にカーネルv2.2.5に対して構築されています...
それは(長い間サポートされていない)後の2.2カーネルで動作します。
(サポートされていない月から)2.4カーネルで動作する可能性があります。
2.6および3.xカーネルでは動作しません(引き続きサポートされます)
2.6クライアント用のバージョンを作成します http://www.perforce.com/downloads/complete_list ニーズに合わせて利用できます。