在ubuntu上构建android ADB时出错

问题描述 投票:0回答:1

我在编译android adb源代码时遇到了问题。我遵循谷歌上的一些提示:

$ git clone git://android.googlesource.com/platform/system/core.git
system/core
$ git clone git://android.googlesource.com/platform/build.git build
$ git clone git://android.googlesource.com/platform/external/zlib.git

外部/zlib $ git clone git://android.googlesource.com/platform/bionic.git 仿生

一切顺利。我这样做: ” 编辑 build/core/main.mk 并注释掉标记的部分

  *# Check for the correct version of java*

  *# Check for the correct version of javac*

由于 adb 不需要 Java,因此这些检查是不必要的。 还要编辑 build/target/product/sdk.mk 并注释掉后面的“include”行

  *# include available languages for TTS in the system image*

这避免了下载 adb 不需要的语言文件。 ” 然后是Makefile。这里我不知道我现在应该做什么,正如博客所说,我应该像这样保存Makefile,然后

cd system/core/adb; 
make

生成文件:

SRCS+= utils.c

VPATH+= ../libcutils SRCS+= abort_socket.c SRCS+=
socket_inaddr_any_server.c SRCS+= socket_local_client.c SRCS+=
socket_local_server.c SRCS+= socket_loopback_client.c SRCS+=
socket_loopback_server.c SRCS+= socket_network_client.c


VPATH+= ../libzipfile SRCS+= centraldir.c SRCS+= zipfile.c


VPATH+= ../../../external/zlib SRCS+= adler32.c SRCS+= compress.c
SRCS+= crc32.c SRCS+= deflate.c SRCS+= infback.c SRCS+= inffast.c
SRCS+= inflate.c SRCS+= inftrees.c SRCS+= trees.c SRCS+= uncompr.c
SRCS+= zutil.c


CPPFLAGS+= -DADB_HOST=1 CPPFLAGS+= -DHAVE_FORKEXEC=1 CPPFLAGS+=
-DHAVE_SYMLINKS CPPFLAGS+= -DHAVE_TERMIO_H CPPFLAGS+= -D_GNU_SOURCE CPPFLAGS+= -D_XOPEN_SOURCE CPPFLAGS+= -I. CPPFLAGS+= -I../include
CPPFLAGS+= -I../../../external/zlib


CFLAGS+= -O2 -g -Wall -Wno-unused-parameter LDFLAGS= -static LIBS=
-lrt -lpthread


 **TOOLCHAIN= arm-none-linux-gnueabi- CC= $(TOOLCHAIN)gcc LD= $(TOOLCHAIN)gcc**


 OBJS= $(SRCS:.c=.o)


 all: adb


 adb: $(OBJS)
       $(LD) -o $@ $(LDFLAGS) $(OBJS) $(LIBS)


 clean:
       rm -rf $(OBJS)

然后出现错误:

$ make arm-none-linux-gnueabi-gcc -O2 -g -Wall -Wno-unused-parameter -DADB_HOST=1 -DHAVE_FORKEXEC=1 -DHAVE_SYMLINKS -DHAVE_TERMIO_H -D_GNU_SOURCE -D_XOPEN_SOURCE -I。 -I../include -I../../../external/zlib -c -o adb_client.o adb_client.c make: arm-none-linux-gnueabi-gcc:找不到命令 make: * [adb_client.o] 错误127

我认为我的操作系统是ubuntu而不是Linux/ARM,但由于缺乏知识,我不知道我能用这个Makefile做什么。 请帮忙。 谢谢!

android makefile adb android-source
1个回答
0
投票

需要通过命令安装ARM的交叉编译器

sudo apt-get install gcc-4.6-multilib-arm-linux-gnueabi

也许你需要为arm安装g++交叉编译器。 最好的问候

© www.soinside.com 2019 - 2024. All rights reserved.