“wordlist”的非数字第二个参数

我在Eclipse-android中构buildac项目,并得到以下错误:

这是一个ndk构build错误(独立于我的代码)

/Users/eladb/MyWorkspace/android-ndk-r8e/build/gmsl/__gmsl:512: *** non-numeric second argument to 'wordlist' function: ''. Stop.

试着

android-ndk-r8b

android-ndk-r8e

我怎样才能解决这个问题?

Solutions Collecting From Web of "“wordlist”的非数字第二个参数"

这是一个已知的问题,因为r8d NDK没有正确地从AndroidManifest.xml获取android:minSdkVersion属性。

要解决该问题,请将文件/ android-ndk-r8d / build / gmsl / __ gmsl的第512行更改为:

 int_encode = $(__gmsl_tr1)$(wordlist 1,$(words $1),$(__gmsl_input_int)) 

在您的AndroidManifest中,添加以下行:

 <uses-sdk android:minSdkVersion="3" /> 

这为我解决了这个问题。 导入您下载的项目时通常会得到这个,因为新生成的项目没有这种错误。

有关信息,这个问题也可以从命令行复制。

尝试改变你的文件传输控制(\ r \ n)为linux格式(\ n)为了解决这个问题,我编辑了vi文件,并做了一个“set filetype = unix”

看起来ndk-build中的XMLparsing代码对于空格是敏感的(从r8e起)。当我在我的清单中有以下行时,出现这个错误:

 <uses-sdk android:minSdkVersion ="10" android:targetSdkVersion="11" /> 

当我用下面的行replace它时,问题消失了,删除了minSdkVersion和=符号之间的空格:

 <uses-sdk android:minSdkVersion="10" android:targetSdkVersion="11" /> 

啊。

是否应该修补ndk(如接受的答案中所述)或者在应用程序方面做一个解决方法是值得商榷的。 我select了解决方法,因为我在一个需要构build多个不同环境的团队中工作,包括一个共享的CI服务器,而且我不想为每个环境和每个新开发人员修补ndk。 如果你单独工作,接受的答案可能会更合适,因为它也将被固定为您的未来项目。

刚刚进入相同的问题

“…. …. android-ndk-r12b / build / gmsl / __ gmsl:512:***非数字string的第二个参数:'18e'停止。

如果你得到这个18e,这个e可以是任何东西,因为在Application.mk中你给APP_PLATFORM添加了一个字母

“APP_PLATFORM:= android-18e”,它应该是“APP_PLATFORM:= android-18”

最后没有信,这就解决了我不知道什么时候以及如何添加的错误types,因为我现在几个星期没打开这个文件,奇怪!

更新您的NDK到r15b或后者。 对我来说,它的工作。