LINUX.ORG.RU

Не могу установить Android SDK


0

1

Ubuntu 11.10 amd64, jdk с реп ppa:ferramroberto/java, eclipse 3.7.2 64-bit

При запуске в eclipse вываливается:

[2012-03-07 23:36:19 - adb] Failed to get the adb version: Cannot run program "/home/turbid/android-sdk-linux/platform-tools/adb": java.io.IOException: error=2, Нет такого файла или каталога

Гугл советует проверить установлен ли ia32-libs и запустить getlibs ./adb

Перовое установлено, на второе отвечает: «This application isn't missing any dependencies»

p.s.

ls -l /home/turbid/android-sdk-linux/platform-tools/adb
-rwxrwxr-x 1 turbid turbid 159620 2012-03-07 23:56 /home/turbid/android-sdk-linux/platform-tools/adb
$  
$ cd /home/turbid/android-sdk-linux/platform-tools/
$ ./adb
bash: ./adb: Нет такого файла или каталога

куда смотреть?

★★★★★

вапервых сан-джава из партнерских реп
вавтарых почитай все до конца, там еще переменные окружения надо.

Jetty ★★★★★ ()
Ответ на: комментарий от AITap
$ stat ./adb
  File: «./adb»
  Size: 159620          Blocks: 312        IO Block: 4096   обычный файл
Device: 803h/2051d      Inode: 789014      Links: 1
Access: (0775/-rwxrwxr-x)  Uid: ( 1000/  turbid)   Gid: ( 1000/  turbid)
Access: 2012-03-08 00:00:45.158648018 +0400
Modify: 2012-03-07 23:56:50.166654762 +0400
Change: 2012-03-07 23:56:50.166654762 +0400
$
$ file ./adb
./adb: ELF 32-bit LSB executable, Intel 80386, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.8, stripped
Turbid ★★★★★ ()
Ответ на: комментарий от Jetty

вапервых сан-джава из партнерских реп

ее там уже давно нет: Debian и Ubuntu удаляют из репозиториев Oracle JDK

ставил из репозитория что выше написал

вавтарых почитай все до конца, там еще переменные окружения надо.

$ echo $PATH
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/home/turbid/android-sdk-linux/tools:/home/turbid/android-sdk-linux/platform-tools
Turbid ★★★★★ ()
Ответ на: комментарий от Jetty

Изучай матчасть & доку читай.... Кстати как раз на девелоперах.ондроед.ком

копетан, есть что по делу сказать?

Turbid ★★★★★ ()
Ответ на: комментарий от AITap
$ strace ./adb
execve("./adb", ["./adb"], [/* 48 vars */]) = -1 ENOENT (No such file or directory)
dup(2)                                  = 3
fcntl(3, F_GETFL)                       = 0x8002 (flags O_RDWR|O_LARGEFILE)
fstat(3, {st_mode=S_IFCHR|0600, st_rdev=makedev(136, 1), ...}) = 0
mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f17a637f000
lseek(3, 0, SEEK_CUR)                   = -1 ESPIPE (Illegal seek)
write(3, "strace: exec: No such file or di"..., 40strace: exec: No such file or directory
) = 40
close(3)                                = 0
munmap(0x7f17a637f000, 4096)            = 0
exit_group(1)                           = ?
$
$ ldd ./adb
        не является динамическим исполняемым файлом
Turbid ★★★★★ ()

Возможно не хватает каких-то библиотек, чтобы нормально работал adb в 64-битном окружении.

Попробуй поставить все что рекомендуют для сборки Android Framework под Ubuntu-64:

$ sudo apt-get install git-core gnupg flex bison gperf build-essential \
  zip curl zlib1g-dev libc6-dev lib32ncurses5-dev ia32-libs \
  x11proto-core-dev libx11-dev lib32readline5-dev lib32z-dev \
  libgl1-mesa-dev g++-multilib mingw32 tofrodos python-markdown \
  libxml2-utils xsltproc

http://source.android.com/source/initializing.html - подробнее тут.

Мне помогало это, если я не ошибаюсь.

mono ★★★★★ ()
Ответ на: комментарий от Jetty

вавтарых почитай все до конца, там еще переменные окружения надо.

Не нужны там переменные окружения. Для сборки Framework есть встроенные скрипты, которые все корректно инициализируют. Для ADT нужно лишь правильно указать путь к SDK.

mono ★★★★★ ()
Ответ на: комментарий от mono

Хотя, если нужно только Android SDK/ADT, большая часть из этого списка зависимостей не нужна.

mono ★★★★★ ()
Ответ на: комментарий от Turbid

Это нужны для сборки платформы, а не adb и компании. Сюда включены зависимости, чтобы adb работало в 64-битном окружении, потому что при сборке фреймворка adb используется бинарный и такой же 32-битный.

Только он вытягивается вместе с сорцами.

mono ★★★★★ ()
Ответ на: комментарий от Turbid

И там указания что делать, если девайс не будет виден в adb, как добавить правило в udev.

mono ★★★★★ ()
Ответ на: комментарий от AITap

./adb: <...> dynamically linked (uses shared libs)
не является динамическим исполняемым файлом

Очень странно.

аха

$ readelf -h ./adb 
ELF Header:
  Magic:   7f 45 4c 46 01 01 01 00 00 00 00 00 00 00 00 00 
  Class:                             ELF32
  Data:                              2's complement, little endian
  Version:                           1 (current)
  OS/ABI:                            UNIX - System V
  ABI Version:                       0
  Type:                              EXEC (Executable file)
  Machine:                           Intel 80386
  Version:                           0x1
  Entry point address:               0x8049e60
  Start of program headers:          52 (bytes into file)
  Start of section headers:          158540 (bytes into file)
  Flags:                             0x0
  Size of this header:               52 (bytes)
  Size of program headers:           32 (bytes)
  Number of program headers:         7
  Size of section headers:           40 (bytes)
  Number of section headers:         27
  Section header string table index: 26
Turbid ★★★★★ ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.