|
|
第一次玩Android,弄来一点资源,碰到一些编译问题,为此,将搭建ubuntu 14.04 LTS版本的编译环境,做个记录。: ]9 y' c. e) h1 Y' r- z0 J* q$ \
2 d6 s+ \9 Q z* |/ X一、for MTK8382
3 B6 ]# m) U! T ~
5 [* H9 U( @; V, i& B. G- o6 U1、安装完OS,保持网络畅通,安装ia32老的库和相应的开发工具及库,- sudo -i
) e% A: P' o, M$ ^# e7 I - cd /etc/apt/sources.list.d T9 T) h6 Y7 D) H) i
- echo "deb http://old-releases.ubuntu.com/ubuntu/ raring main restricted universe multiverse" >ia32-libs-raring.list8 S; _% N/ }8 t
- apt-get update3 G/ E: E* Q) w
- apt-get install ia32-libs
% M; a/ Q }! ~* i; p& p/ _8 A - ; g1 k4 u- F r- b
- apt-get install dpkg-dev
2 Q! |4 m7 a7 l F) n: A! n
$ n$ _% V! R. u9 K6 E- apt-get install git-core gnupg flex bison gperf build-essential zip curl libc6-dev libncurses5-dev:i386 x11proto-core-dev libx11-dev:i386 libreadline6-dev:i386 libgl1-mesa-dev:i386 g++-multilib mingw32 tofrodos python-markdown libxml2-utils xsltproc zlib1g-dev:i386
2 z: t/ f9 A3 N; U g3 {
复制代码 2、安装JDK和SDK- F. N- s: p) m; ?
" F+ k6 \1 Q& X6 l3 V从Orace网站上找jdk-6u23-linux-x64.bin :http://www.oracle.com/technetwor ... javase6-419409.html- cp jdk-6u23-linux-x64.bin /opt/# F; M: }. g7 S+ s" m
- chmod a+x jdk-6u23-linux-x64.bin8 j" q: S0 U/ G1 ]
- ./jdk-6u23-linux-x64.bin
复制代码 google官网上下载adt-bundle-linux-x86_64-20140321.zip : https://dl.google.com/android/ad ... x86_64-20140321.zip
[% P: _5 k5 R如果下不到,可能需要翻墙,或者在网上搜相应的文件,找到下载即可- unzip adt-bundle-linux-x86_64-20140321.zip. N R" d1 c' M8 H+ s
- cd adt-bundle-linux-x86_64-20140321
- t6 h/ A g2 p" {+ v - sudo cp -r * /opt/
复制代码 3、改变shell环境变量增加如下内容- JAVA_HOME=/opt/jdk1.6.0_23
# g& f- `9 I$ J$ o, x. X. l. O. W - export JAVA_HOME
& k/ z3 B* `9 y, i$ d9 F; S. w P
& ?' k; O" G1 t- ANDROID_JAVA_HOME=/opt/jdk1.6.0_23. a9 Q( Z( @3 N/ P+ U) }* h
- export ANDROID_JAVA_HOME
8 p. ?& ]/ r. N9 p p7 d# n# Z - export CLASSPATH=.:$CLASSPATH:$JAVA_HOME/lib:$JAVA_HOME/jre/lib
- O9 v! G" u8 O9 J' T4 V
4 H5 t( j' z/ n4 ]- E9 {- PATH=/opt/jdk1.6.0_23/bin:/opt/sdk/platform-tools:/opt/sdk/tools:$PATH
& ]8 n7 b' Z: F* i% a$ A - export PATH
复制代码 4、安装gcc 4.4,并使用此版本- sudo -s
7 ]. l5 R* M( B( @- G - apt-get install gcc-4.4 g++-4.4 g++-4.4-multilib
- Y& g/ I' y1 \: _; [0 r0 i) q - cd /usr/bin/' |$ Z) O, b6 b1 i7 U# f" C
- mv gcc gcc.4.8- v! ]; M# T2 D) L" |
- mv g++ g++.4.8
; t* a$ l( W, }7 r, F% f2 s Y - ln -s g++-4.4 g++, m1 Q2 a6 [6 d& C* F& d! K; q
- ln -s gcc-4.4 gcc
复制代码 5、重新打开shell,编译时,发现log_err :- `mediatek/protect/frameworks/base/*/': No such file or directory
复制代码 以为android的编译错误只会放在log_err里,看了半天没找到原因,后面看log时才发现:- Can't locate Switch.pm in @INC (you may need to install the Switch module) (@INC contains: /etc/perl /usr/local/lib/perl/5.18.2 /usr/local/share/perl/5.18.2 /usr/lib/perl5 /usr/share/perl5 /usr/lib/perl/5.18 /usr/share/perl/5.18 /usr/local/lib/site_perl .) at external/webkit/Source/WebCore/make-hash-tools.pl line 23., e3 L! Y2 {" @
- BEGIN failed--compilation aborted at external/webkit/Source/WebCore/make-hash-tools.pl line 23.
复制代码 开打pl文件,并依据提示,少了libswitch-perl库。在此提示,请尽量检查log……安装相应的库文件。- sudo apt-get install libswitch-perl
复制代码 按以上顺序,编译即成功.( Q7 @7 t, @6 ?9 g E- H
|
|