64bit版 Utuntu 14.04 LTSで32bitプログラム(アプリケーション)が動かない!32bitプログラムの実行方法

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' にはインストール候補がありません

といわれてインストールできず

結局のところ、x86_64版ではまだ ia32-libs 導入が対応されないらしいです。 ということで、こちらを参考に強引にia21-libsを導入することにしました。
ia 32 - How to install ia32-libs in ubuntu 14.04 LTS - Stack Overflow

$ 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.

なんだってさ。

まぁ、とりあえずこれで動きました。