64bit版のUbuntu 14.04 LTSであるプログラムを実行しようとすると、
bash: /home/user/xxx: そのようなファイルやディレクトリはありません
というエラーがでて実行できないという状況になりました。
でも、ls -lで見てみるともちろんファイルはありますし、パーミッション(実行権限)も大丈夫です。なぜだろう・・・
スポンサーリンク
原因と対策
いろいろと調べてみると、64bit Linuxで32bitプログラムを実行するにはia32-libsが必要なことがわかりました。
早速、
$ sudo apt-get install ia32-libs
をしたんですが、
パッケージリストを読み込んでいます... 完了
依存関係ツリーを作成しています
状態情報を読み取っています... 完了
パッケージ ia32-libs はデータベースには存在しますが、利用できません。
おそらく、そのパッケージが見つからないか、もう古くなっているか、
あるいは別のソースからのみしか利用できないという状況が考えられます
ただし、以下のパッケージで置き換えられます:
lib32z1 lib32ncurses5 lib32bz2-1.0
E: パッケージ 'ia32-libs' にはインストール候補がありません
依存関係ツリーを作成しています
状態情報を読み取っています... 完了
パッケージ ia32-libs はデータベースには存在しますが、利用できません。
おそらく、そのパッケージが見つからないか、もう古くなっているか、
あるいは別のソースからのみしか利用できないという状況が考えられます
ただし、以下のパッケージで置き換えられます:
lib32z1 lib32ncurses5 lib32bz2-1.0
E: パッケージ 'ia32-libs' にはインストール候補がありません
といわれてインストールできず
結局のところ、x86_64版ではまだ ia32-libs 導入が対応されないらしいです。
ということで、こちらを参考に強引にia21-libsを導入することにしました。
ia 32 - How to install ia32-libs in ubuntu 14.04 LTS - Stack Overflow
1 2 3 4 5 |
$ sudo -i $ cd /etc/apt/sources.list.d $ echo "deb http://archive.ubuntu.com/ubuntu/ raring main restricted universe multiverse" >ia32-libs-raring.list $ apt-get update $ apt-get install ia32-libs |
でも、
PS:In this way,you can install ia32-libs.However, we add the source of 13.04 instead,so, there may be some problem unknown。After install ia32-libs,I recommend you to remove the ia32-libs-raring.list in /etc/apt/sources.list.d,and do sudo apt-get update.
なんだってさ。
まぁ、とりあえずこれで動きました。