2015-10-17 54 views
0

我使用Ubuntu(15.04)環境來構建android源代碼。爲Android K版,它需要製作版本3.81或3.82,和我用如下的3.82版本:Android版源代碼make [3.82]的一個問題build

[email protected]:~/mine/$ make --version 
GNU Make 3.82 
Built for x86_64-unknown-linux-gnu 
Copyright (C) 2010 Free Software Foundation, Inc. 
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html> 
This is free software: you are free to change and redistribute it. 
There is NO WARRANTY, to the extent permitted by law. 

但我造成做兩個編譯錯誤似乎不支持某些功能,如' - ='或定義特徵,有人可以幫助檢查它並告訴我make如何支持這些功能?非常感謝你的幫助。

方案1: 生成文件:

116 ifeq ($(LLVM_VER_31), 1) 
117 LLVM_LLC_SOURCES -= \ 
118   $(LLVM_OXILIASMPRINTER_SRCS) 
119 endif 

錯誤: SC/sc.srcs.mk:117:***缺少隔板。停止。

方案2: 生成文件:

12 libmmipl_cflags := -g -O3 \ 
13   $(CPU) 
14   -Dlrintf=_ffix_r \ 
15   -D__alignx\(x\)=__attribute__\(\(__aligned__\(x\)\)\) 
16   -D_POSIX_SOURCE \ 
17   -DPOSIX_C_SOURCE=199506L \ 

錯誤: IPL/Android.mk:16:***食譜第一目標之前開始。停止。

+0

你期待' - ='完成的是什麼? – rici

回答

0

第二個問題是第15行末尾缺少\,所以第16行看起來像是新邏輯行的開始。由於它以選項卡開頭,make認爲這是一個不合適的配方。

對於您的第一個問題,v3.81和最新版本v4.1都不瞭解-=作爲賦值運算符。