2012-03-12 126 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的“制作”可执行文件放在当前目录中。

顺便说一句:如果您也可以提供关于主机系统的一些信息 - 例如您想要构建的系统。

相关问题