64位archlinux下面使用adb需要安装的包

来源:互联网 发布:mac ae插件安装位置 编辑:程序博客网 时间:2024/06/07 04:57

装了个64位的Archlinux,发现adb用不了,运行adb提示没有这个文件或目录,进入到sdk的platform-tools目录下去运行还是不行。

运行一下file命令

$ 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

可以看到adb是一个32位的linux程序。


那么首先就需要装32的glibc了,在archlinux的官网包搜索里面搜索glibc

4 packages found.

ArchRepoNameVersionDescriptionLast UpdatedFlag Datex86_64Coreglibc2.16.0-4GNU C Library2012-08-29 x86_64Extrakdesdk-kmtrace4.9.1-1A KDE tool to assist with malloc debugging using glibc´s "mtrace" functionality2012-09-05 x86_64Multiliblib32-glibc2.16.0-4GNU C Library for multilib2012-08-30 x86_64Extranss-mdns0.10-5glibc plugin providing host name resolution via mDNS2012-02-21 

4 packages found.

看到了32的glibc,但是在Multilib仓里面,这个仓默认是没有打开的

编辑/etc/pacman.conf文件,将下面几行前面的注释去掉

[multilib]
SigLevel = PackageRequired
Include = /etc/pacman.d/mirrorlist

然后运行pacman -Sy同步包数据库

再运行pacman -S lib32-glibc安装32位的glibc


再运行adb

$ adb devices
adb: error while loading shared libraries: libncurses.so.5: cannot open shared object file: No such file or directory

同理搜索ncurses可以看到需安装lib32-ncurses

# pacman -S lib32-ncurses


再运行adb

# adb devices
adb: error while loading shared libraries: libstdc++.so.6: cannot open shared object file: No such file or directory

再搜索可以看到需安装lib32-libstdc++5

# pacman -S lib32-libstdc++5


再运行adb

# adb devices
List of devices attached 
10C61F9CD8B1 device


正常了。


原创粉丝点击