Android NDK Build在mac系统中失败但在Windows系统中有效

Sha*_*ajo 5 macos android-ndk eclipse-adt

  1. 通过ADT的偏好添加了NDK路径

  2. 通过Android工具添加原生支持

我试着在互联网上搜索但我找不到任何有用的东西来解决我的问题

它编译了这么多c,cpp文件1分钟然后突然出现以下错误

make: /Users/username/Documents/Android/NDK/android-ndk-r10/toolchains/arm-linux-androideabi-4.4.3/prebuilt/darwin-x86/bin/arm-linux-androideabi-gcc: Command not found

make: *** [obj/local/armeabi-v7a/objs/crypto/cryptlib.o] Error 127


<terminated> NDKBuilder [program] /Users/username/Documents/Android/NDK/Android-ndk-r10/ndk-build.cmd

NDKBuilder [program] /Users/username/Documents/Android/NDK/Android-ndk-r10/ndk-build.cmd :                                                                                                         
line 1: @echo: command not found
NDKBuilder [program] /Users/username/Documents/Android/NDK/Android-ndk-r10/ndk-build.cmd : 
line 2: rem: command not found
NDKBuilder [program] /Users/username/Documents/Android/NDK/Android-ndk-r10/ndk-build.cmd : 
line 3: call : command not found
NDKBuilder [program] /Users/username/Documents/Android/NDK/Android-ndk-r10/ndk-build.cmd : 
line 4: Syntax error near unexpected token ‘(‘
NDKBuilder [program] /Users/username/Documents/Android/NDK/Android-ndk-r10/ndk-build.cmd : 
line 5:’If ERRORLEVEL 1 (exit /b 1)’
Run Code Online (Sandbox Code Playgroud)

任何帮助表示赞赏!

ph0*_*h0b 7

我看到你正在使用NDK r10,但你的应用程序要求的gcc 4.4.3工具链至少从r9开始就无法使用.

您可以检查Application.mk文件中的NDK_TOOLCHAIN_VERSION变量,并将其删除,以便它使用可用的默认工具链(4.6).

另一个问题是调用了ndk-build.cmd.但是ndk-build.cmd要在Windows上使用,而不是在Mac或Linux上ndk-build使用.

您可以检查是否在项目的eclipse C/C++属性中手动设置了"构建命令".

  • 你得到的错误似乎表明你的NDK无法链接到OpenSSL库,也许你错过了一些针对你所针对的架构的OpenSSL预构建.您是否将ndk r10用于64位目标?在*Application.mk*内部,将`APP_ABI:= all`更改为`APP_ABI:= all32`,仅针对32位体系结构进行编译. (3认同)