2012-03-12 120 views
2

我正在嘗試爲android源代碼構建安裝android環境。我認爲系統上的make版本導致了android構建的問題。我現在試圖從我從http://ftp.gnu.org/gnu/make/下載的來源安裝make。 我首先配置它,然後運行make給我這個錯誤。一直試圖通過改變錯誤行中的內容來進行調試。bin/bash:-c:第0行:意外標記附近的語法錯誤`;;'

[email protected]:/home/hali/Downloads/make-3.81# make 
/bin/bash: -c: line 0: syntax error near unexpected token `;;' 
/bin/bash: -c: line 0: `if test ! -f config.h; then rm -f stamp-h1; make stamph1;;  
else :; fi' 
make: *** [config.h] Error 1 

這是我試圖編譯的代碼中的Makefile。

config.h: stamp-h1 
    @if test ! -f [email protected]; then \ 
     rm -f stamp-h1; \ 
     $(MAKE) stamp-h1; \ 
    else :; fi 

我不太瞭解shell腳本。儘管爲了故障排除而研究了一些小問題。我需要從這裏獲得幫助。

+0

我無法用我的系統上的3.81'make'軟件包重現此問題。 '。/ configure'步驟是否會引發任何錯誤? – sarnold 2012-03-12 08:30:58

+0

';;'是如何進入錯誤輸出而不是源文件的? – sarnold 2012-03-12 08:32:50

+0

這個答案來自於自述文件 某些系統的Make程序被破壞,無法處理GNU Make的Makefile。如果在構建GNU Make時從系統的Make中得到錯誤,請嘗試使用'build.sh'。 這工作。對於任何從gnu.org編譯make的人而言 – sraddhaj 2012-03-12 10:16:11

回答

1

看起來你試圖在一個壞的'make'的幫助下建立'make'。

GNU make帶有一個腳本來構建make,而不需要(工作)make。 拆包後做:

$ ./configure 
$ bash build.sh 

GNU的「製作」可執行文件放在當前目錄中。

順便說一句:如果您也可以提供關於主機系統的一些信息 - 例如您想要構建的系統。

相關問題