本文是我编译过程所遇到的一些问题,然后通过搜索网络解决方法,结实验都能成功,本着从网络受益也回报网络,特整理成文档以便他人少走弯路。
我在编译的过程中遇到下面的错误:
Youareattempti
gtobuildo
a32bitsystem
O
ly64bitbuilde
viro
me
tsaresupportedbeyo
dfroyo22
这是因为在Makefile中检测了CPU的字长。我直接把buildcoremai
mk中下面的话注释掉:
if
eq64fi
dstri
g64build_arch
war
i
g
war
i
gYouareattempti
gtobuildo
a32bitsystem
war
i
gO
ly64bitbuilde
viro
me
tsaresupportedbeyo
dfroyo22
war
i
g
errorstop
e
dif
接下来又遇到下面的错误:
Docsdroiddocouttargetcommo
docsapistubs
Could
otload‘clearsilverj
i’
javalibrarypathouthostli
uxx86lib
makeouttargetcommo
docsapistubstimestampError45
makeWaiti
gforu
fi
ishedjobs…
Could
otload‘clearsilverj
i’
javalibrarypathouthostli
uxx86lib
makeouttargetcommo
docsdoccomme
tchecktimestampError45
这是由于clearsilver在编译时如果检测到使用JavaJDK6,就使用64位编译。要避开此错误,需要修改下面四个文件:
exter
alclearsilvercgiA
droidmk
exter
alclearsilverjavaj
iA
droidmk
exter
alclearsilverutilA
droidmk
exter
alclearsilvercsA
droidmk
把这四个Makefile中的下列语句注掉即可:
Thisforcesa64bitbuildforJava6
Comme
tbyEaswy
LOCAL_CFLAGSm64
LOCAL_LDFLAGSm64
然后在exter
alclearsilver目录中执行一下makeclea
,然后回到项目根目录,继续make即可。
当编译完成时,生成的image文件放在outtargetproductge
eric目录中。
刚下好a
droid源码后马上编译会发现有各种各样的错误,原因是有些依赖包没有装。
为了避免出现以下我遇到的错误,请先安装jdk15,必须是jdk15,不然肯定编译不过的。
然后,在检查以下有没有安装以下依赖包:
sudoaptgeti
stallbiso
libc6devamd64gmultilibzlib1gdevlib64z1devflexlib
curses5devlibx11devgperf
下面是我遇到的错误及解决方法:
bi
bashbiso
:找不到命令
Checki
gbuildtoolsversio
s
Youareattempti
gtobuildwiththei
correctversio
ofjava
Yourversio
isbi
bashjava:找不到命令
Thecorrectversio
is16
Pleasefollowthemachi
esetupi
structio
sat
httpsourcea
droidcomsourcedow
loadhtml
r