Jawabannya ada di baris keluaran readelf -a
ini dalam pertanyaan awal
[Requesting program interpreter: /lib/ld-linux.so.2]
Saya kehilangan file /lib/ld-linux.so.2, yang diperlukan untuk menjalankan aplikasi 32-bit. Paket Ubuntu yang memiliki file ini adalah libc6-i386.
Pertanyaan lama, tapi semoga ini bisa membantu orang lain.
Dalam kasus saya, saya menggunakan toolchain di Ubuntu 12.04 yang dibangun di Ubuntu 10.04 (membutuhkan GCC 4.1 untuk membuatnya). Karena sebagian besar perpustakaan telah pindah ke direktori multiarch, ld.so tidak dapat ditemukan. Jadi, buat symlink untuk itu.
Periksa jalur yang diperlukan:
$ readelf -a arm-linux-gnueabi-gcc | grep interpreter: [Requesting program interpreter: /lib/ld-linux-x86-64.so.2]
Buat symlink:
$ sudo ln -s /lib/x86_64-linux-gnu/ld-linux-x86-64.so.2 /lib/ld-linux-x86-64.so.2
Jika Anda menggunakan 32bit, itu akan menjadi i386-linux-gnu dan bukan x86_64-linux-gnu.
WaitForSingleObject dan WaitForMultipleObjects setara di Linux?
Cara mengganti spasi pada nama file menggunakan skrip bash