http://blog.csdn.net/ameyume/article/details/14452245html
---------------------------------------------環境變量設置---------------------------------------------
java
1.設置jdk環境變量python
編譯android源碼只支持jdk 1.6,因此若是須要編譯源碼必須下載jdk 1.6,不能下載最新的jdk 1.7,若是不須要編譯源碼則能夠下載1.7版本的。linux
1.6版本jdk下載地址:http://www.oracle.com/technetwork/java/javase/downloads/java-archive-downloads-javase6-419409.html
android
不要把環境變量配置在/etc/environment和/etc/profile文件中,這樣配置的在有的ubuntu版本上會出現退出當前終端後不起做用的問題,在ubuntu12.04上我就遇到了此問題。
把環境變量配置在用戶目錄.bashrc文件中是最好的選擇。
export JAVA_HOME=/home/abc/jdk1.6.0_45
export PATH=$PATH:$JAVA_HOME/bin:$JAVA_HOME/jre/bin
export CLASSPATH=.:$JAVA_HOME/lib:$JAVA_HOME/jre/lib
git
而後執行source .bashrc使配置生效便可。ubuntu
因爲ubuntu中可能會有默認的jdk,如openjdk。假若有openjdk的話,因此,爲了使默認使用的是咱們安裝的jdk,還要進行以下工做。
執行:
sudo update-alternatives --install /usr/bin/java java ~/abc/jdk1.6.0_45/bin/java 300
sudo update-alternatives --install /usr/bin/javac javac ~/abc/jdk1.6.0_45/bin/javac 300
經過這一步將咱們安裝的jdk加入java選單。
而後執行:
sudo update-alternatives --config java
經過這一步選擇系統默認的jdkwindows
---------
2.增長別名
alias b='cd ..' #返回到上一級目錄
alias bb='cd ../..'
alias bbb='cd ../../..'
alias g='gedit' #打開文本編輯器
---------------------------------------------eclise相關問題---------------------------------------------
1.能夠在終端順利啓動Eclipse,可是從文件夾鼠標雙擊,或者用起動器啓動就會出現以下的內容:
A Java RunTime Environment (JRE) or Java Development Kit (JDK) must be available in order to run Eclipse.No java virtual machine was found after searching the following locations:…api
解決方法:從終端進入你的eclipse目錄,而後輸入:
則命令爲:ln -s /home/abc/jdk1.6.0_45/jre jre
或者bash
解決辦法是在終端進入你的eclipse目錄,而後輸入:
mkdir jre
cd jre
ln -s 你的JDK目錄/bin bin
2. 找不到adb
Android --- 64bit Ubuntu 系統下 搭建JDK和SDK環境後,出現adb:error =12錯誤
Failed to get the adb version: Cannot run program"/home/xxxx/android/android-sdk/platform-tools/adb": error=2,沒有那個文件或目錄
錯誤提示:android-sdk-linux/platform-tools/adb: 沒有那個文件或目錄。
解決方案:因爲是64bit的系統,而Androidsdk只有32bit的程序,須要安裝ia32-libs,才能使用。
開啓終端:sudo apt-get install ia32-libs
3.安裝ADT(Android Development Tools).
啓動Eclipse,在導航菜單中選擇Help->Install New Softwares->點擊Add按鈕->在彈出框Add Repository中輸入Name:Android(隨便填寫),
Location:填寫地址 https://dl-ssl.google.com/android/eclipse/。點擊ok,根據須要選擇,而後安裝。安裝完畢後,重啓Eclipse。
4.在Eclipse裏配置SDK路徑
選擇Windows->Preferences->Android,選擇Android SDK的位置。個人是解壓在D:Program Filesandroid-sdk-windows這裏的,選擇這裏就好了
---------------------------------------------編譯android源碼---------------------------------------------
編譯過程遇到的問題:
/bin/bash: bison: 未找到命令
sudo apt-get install bison
/bin/bash: xsltproc: 未找到命令
sudo apt-get install xsltproc
external/clearsilver/cgi/cgi.c:22:18: fatal error: zlib.h: 沒有那個文件或目錄
sudo apt-get install zlib1g-dev
/bin/bash: flex: 未找到命令
sudo apt-get install flex
prebuilt/linux-x86/sdl/include/SDL/SDL_syswm.h:55:22: fatal error: X11/Xlib.h: 沒有那個文件或目錄
sudo apt-get install libx11-dev
/usr/bin/ld: cannot find -lncurses
sudo apt-get install libncurses5-dev
sudo apt-get install gperf
gcc: error trying to exec 'cc1plus': execvp: 沒有那個文件或目錄
sudo apt-get install build-essential
參考:http://www.cnblogs.com/skyme/archive/2011/01/19/1939606.html
/bin/bash: xmllint: 未找到命令
解決
sudo apt-get install xsltproc
sudo apt-get install libxml2-utils
javac: 目標發行版 1.5 與默認的源發行版 1.7 衝突
緣由:在ubuntu軟件中心安裝eclipse致使jdk變成了默認的openjdk
~$ java -version
java version "1.7.0_21"
OpenJDK Runtime Environment (IcedTea 2.3.9) (7u21-2.3.9-1ubuntu1)
OpenJDK 64-Bit Server VM (build 23.7-b01, mixed mode)
修改方法:卸載ubutnu軟件中心安裝的eclipse,從新下載安裝eclipse和sun jdk1.6。
sudo apt-get remove openjdk*
此命令會卸載全部依賴openjdk的軟件,包括從ubuntu軟件中心安裝的eclipse。
/usr/include/stdc-predef.h:30:26: fatal error: bits/predefs.h: No such file or directory
compilation terminated.
sudo apt-get install gcc-multilib
錯誤:
build/core/java.mk:9: *** bin: Target java module does not define any source or resource files. Stop.
解決:
刪除源碼根目錄下的bin文件夾,這個文件夾是導入eclipse時建立的。
abc@ab-Precision-T1650:~$ sudo update-alternatives --config java
update-alternatives: 錯誤: no alternatives for java
http://source.android.com/source/initializing.html#configuring-usb-access
Initializing a Build Environment
在12.04,12.10,13.04版本上須要安裝如下庫
$ sudo apt-get install git gnupg flex bison gperf build-essential \
zip curl libc6-dev libncurses5-dev:i386 x11proto-core-dev \
libx11-dev:i386 libreadline6-dev:i386 libgl1-mesa-glx:i386 \
libgl1-mesa-dev g++-multilib mingw32 tofrodos \
python-markdown libxml2-utils xsltproc zlib1g-dev:i386
$ sudo ln -s /usr/lib/i386-linux-gnu/mesa/libGL.so.1 /usr/lib/i386-linux-gnu/libGL.so
但本人的機器上安裝上以上lib後仍是編譯不過,後來發現是由於之前編譯使致使了current.txt文件有改變,所以api接口與實際不符,因此編譯報錯找不到android自帶的api。 把current.txt恢復後便可編譯經過。 --------------------------------------------