Программы, запускаемые в android sdk из оболочки и из sbt

У меня есть странная проблема, когда я не могу запустить aapt из команды sbt, а также из оболочки.

Я запустил эту команду:

sbt update package-debug

И все гудит, пока я не получу эту ошибку:

java.io.IOException: Cannot run program "/home/egervari/Programs/android-sdk-linux_x86/platforms/android-7/tools/aapt": java.io.IOException: error=2, No such file or directory

Итак, я пытаюсь запустить его вручную, просто для него:

[email protected]:~/Programs/android-sdk-linux_x86/platforms/android-7/tools$ ./aapt
bash: ./aapt: No such file or directory

Это довольно странно, потому что оно прямо там:

[email protected]:~/Programs/android-sdk-linux_x86/platforms/android-7/tools$ ls -la
total 4660
drwxr-xr-x 3 egervari egervari    4096 2010-10-16 09:13 .
drwxr-xr-x 8 egervari egervari    4096 2010-10-16 09:13 ..
-rwxrwxrwx 1 egervari egervari 3472673 2010-10-16 09:13 aapt
-rwxrwxrwx 1 egervari egervari 1050328 2010-10-16 09:13 aidl
-rwxrwxrwx 1 egervari egervari  213690 2010-10-16 09:13 dexdump
-rwxrwxrwx 1 egervari egervari    2497 2010-10-16 09:13 dx
drwxr-xr-x 2 egervari egervari    4096 2010-10-16 09:13 lib
-rw-r--r-- 1 egervari egervari   10800 2010-10-16 09:13 NOTICE.txt
[email protected]:~/Programs/android-sdk-linux_x86/platforms/android-7/tools$

Помощь?:/

Ответ 1

Похоже, вы пытаетесь запустить 32-битный двоичный код в 64-разрядной ОС. Возможно, вам не хватает разделяемых библиотек. Попробуйте запустить file aapt и ldd ./aapt, чтобы увидеть, что он говорит.

Если это так, то установка ia32-libs может исправить его, поскольку нет 64-разрядных бинарных файлов.

sudo apt-get install ia32-libs

Ответ 2

ia32-libs устарел.

Следующие работали для меня:

apt-get install lib32z1 lib32ncurses5 lib32bz2-1.0

Я все еще получал ошибку при запуске aapt, поэтому я установил это:

apt-get install lib32stdС++ 6

теперь работает отлично.