Android系統編譯過程中常見問題匯總(1)

來源:互聯網
上載者:User

1、問題一:/bin/bash: bison: 未找到命令

 解決方案:$ sudo apt-get install bison

 

2、問題二:

You are attempting to build with the incorrect version of java.

Your version is: /bin/bash: java: 未找到命令.

The correct version is: 1.5.

 解決方案:

注意:必須使用1.5的JDK版本。不能使用1.6等其他版本。

(1)       下載

在sun官網上下載jdk-1_5_0_22-linux-i586.bin。注意不是jdk-1_5_0_22-linux-i586rpm.bin

(2)       部署

進入jdk-1_5_0_22-linux-i586.bin所在目錄

cd ~

賦予該bin檔案可執行屬性

chmod +x jdk-1_5_0_22-linux-i586.bin

一直斷行符號跳過協議到最後一行:

Do you agree to the above license terms? [yes or no]

鍵入yes斷行符號,開始解壓。預設解壓到目前的目錄下的jdk1.5.0_22目錄裡。

(3)       配置環境變數

執行$gedit ~/.bashrc開啟.bashrc檔案。

修改./bashrc檔案,在檔案末尾添加

#set java environment 

JAVA_HOME=“你的路徑”/jdk1.5.0_10
export JRE_HOME=“你的路徑”/jdk1.5.0_10/jre
export CLASSPATH=.:$JAVA_HOME/lib:$JRE_HOME/lib:$CLASSPATH
export PATH=$JAVA_HOME/bin:$JRE_HOME/bin:$PATH

儲存並關閉檔案。

在終端執行source ~/.bashrc重新整理該配置

 使用java –version檢查JDK是否配置正確。

 

3、問題三:

host c++: libhost <= build/libs/host/pseudolocalize.cpp/bin/bash: g++: 未找到命令

make: ***[out/host/linux-x86/obj/STATIC_LIBRARIES/libhost_intermediates/pseudolocalize.o] 錯誤 127

 解決方案:$ sudo apt-get install build-essential

 

4、問題四:

external/clearsilver/cgi/cgi.c:22:18: 致命錯誤: zlib.h: 沒有那個檔案或目錄編譯終端。

make: ***[out/host/linux-x86/obj/SHARED_LIBRARIES/libneo_cgi_intermediates/cgi.o] 錯誤 1

 解決方案:$ sudo apt-get install zlib1g-dev

 

5、問題五:

make: ***[out/host/linux-x86/obj/EXECUTABLES/aapt_intermediates/appt] 錯誤 1

 解決方案:

開啟Android.mk檔案

$gedit frameworks/base/tools/aapt/Android.mk

編輯下面一行:

ifeq ($(HOST_OS),linux)

#LOCAL_LDLIBS += -lrt       把這行注釋掉,改為下面一行。

LOCAL_LDLIBS += -lrt -lpthread

endif

 

6、問題六:

host c: adb<= system/core/adb/fdevent.c

host Executable:adb (out/host/linux-86/obj/EXECUTABLES/adb_intermediates/adb)/user/bin/ld: cannot find –lncurses

collect2: ld 返回 1

make: ***[out/host/linux-86/obj/EXECUTABLES/adb_intermediates/adb] 錯誤 1

 解決方案:$sudo apt-get install libncurses5-dev

 

7、問題七:

make: ***[out/target/product/sam9g45/obj/STATIC_LIBRARIES/libwebcore_intermediates/WebCore/css/CSSPropertyNames.h] 錯誤 25

 解決方案:$sudo apt-get install gpert

 

8、問題八:

host C++: libutils <= frameworks/base/libs/utils/RefBase.cpp

frameworks/base/libs/utils/RefBase.cpp: In member function ‘void android::RefBase::weakref_type::trackMe(bool, bool)’:

frameworks/base/libs/utils/RefBase.cpp:483:67: error: passing ‘const android::RefBase::weakref_impl’ as ‘this’ argument of ‘void android::RefBase::weakref_impl::trackMe(bool, bool)’ discards qualifiers [-fpermissive]

make: *** [out/host/linux-x86/obj/STATIC_LIBRARIES/libutils_intermediates/RefBase.o] 錯誤 1

 解決方案:

開啟Android.mk

$ gedit frameworks/base/libs/utils/Android.mk

將下面這一行

LOCAL_CFLAGS += -DLIBUTILS_NATIVE=1 $(TOOL_CFLAGS)

改為

LOCAL_CFLAGS += -DLIBUTILS_NATIVE=1 $(TOOL_CFLAGS) -fpermissive

 

9、問題九:

make: ***[out/host/linux-x86/obj/EXECUTABLES/emulator_intermediates/android/skin/window.o] Error 1

 解決方案:$ sudo apt-get install libx11-dev

 

10、問題十:

make: *** [out/host/linux-x86/obj/EXECUTABLES/localize_intermediates/localize] 錯誤 1

 解決方案:

開啟Android.mk:

$gedit ./framework/base/tools/localize/Android.mk檔案(注意與問題五中的檔案是不同檔案)

編輯下面一行:

ifeq ($(HOST_OS),linux)

#LOCAL_LDLIBS += -lrt       把這行注釋掉,改為下面一行。

LOCAL_LDLIBS += -lrt –lpthread

 
11、問題十一:

make: ***[out/host/linux-x86/obj/EXECUTABLES/accRuntimeTest_intermediates/accRuntimeTest] 錯誤 1

 解決方案:

開啟Android.mk:

$gedit system/core/libacc/tests/Android.mk(注意與問題五和問題十不是同一個檔案)

將以下缺少的語句添加進去:

LOCAL_SHARED_LIBRARIES := \

     libacc

LOCAL_LDLIBS += -ldl

LOCAL_MODULE_TAGS := tests

在include $(BUILD_HOST_EXECUTABLE)下面添加以下缺少的語句:

LOCAL_SHARED_LIBRARIES := \

     libacc

LOCAL_LDLIBS += -ldl

LOCAL_MODULE_TAGS := tests

 

摘自 北京大學-Google Android實驗室

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.