1

サーバー上で問題なく実行できるこのプログラム「prog」があります。自分のマシン(64ビットUbuntu)で実行しようとすると、次のメッセージが表示されます。

 bash: ./prog: cannot execute binary file

関係するすべてのファイルのすべてのアクセス許可が777に設定されていることを確認しました。これは、アクセス許可の問題ではないことを確認するためです。サーバーは32ビットだと思います。これが理由かもしれません。ただし、64ビットOSはアーキテクチャのサブセットにすぎないため、32ビットプログラムを実行できるべきではありませんか?そうでない場合は、Ubuntu用にダウンロードできるエミュレーターがありますか?それが実際に問題である場合は、32ビットプログラムを実行できますか?

「バイナリファイルを実行できません」というエラーがある程度含まれていることを理解しているので、上記はメッセージが表示される理由の推測にすぎませんが、他の誰かが別の理論を持っている可能性がありますか?

どうもありがとうございました。

4

1 に答える 1

2

prog64ビットコンピューターで使用される32ビット(共有)ライブラリが必要です。それ以外の場合progは実行できません。

を使用してそれらをインストールしてみてください

apt-get install ia32-libs

progさらに多くのライブラリが必要な場合は、32ビットバージョンもインストールしてください)

これでうまくいくはずです。

のソースがある場合は、64ビットコンピューターで再コンパイルする方が便利な場合があることに注意progしてください(32ビットライブラリのインストールが少ない) 。prog

于 2012-08-01T14:30:27.550 に答える