2015-09-07 19 views
7

私のプロジェクトはAndroid NDKを使用しています。エラー:タスク 'ndkBuild'の実行に失敗しました。 >プロセス 'コマンド' Android sdk ndk-bundle/ndk-build.cmd ''がゼロ以外の終了値2で終了しました

  • は私がlocal.properties

ndk.dir=C\:\\Users\\Jang\\AppData\\Local\\Android\\sdk\\ndk-bundle 
sdk.dir=C\:\\Users\\Jang\\AppData\\Local\\Android\\sdk 

にSDKとNDKを追加した のWindows 8とAndroid Studioを使用して、最新のJavaバージョン、AndroidのNDKとAndroid SDK
  • をインストール

    これは私のbuild.gradleです:

    apply plugin: 'com.android.application' 
    
    android { 
        compileSdkVersion 21 
        buildToolsVersion "23.0.0" 
    
        defaultConfig { 
         applicationId "uk.digitalsquid.netspoofer" 
         minSdkVersion 10 
         targetSdkVersion 21 
        } 
    
        buildTypes { 
         release { 
          proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.txt' 
         } 
        } 
    
        sourceSets.main.jni.srcDirs = [] 
    } 
    
    dependencies { 
        compile 'com.android.support:support-v4:23.0.0' 
        compile 'com.google.android.gms:play-services:7.8.0' 
        compile 'org.jsoup:jsoup:1.8.3' 
        compile project(':androidsupportv4preferencefragment') 
    } 
    
    tasks.withType(JavaCompile) { 
        compileTask -> compileTask.dependsOn ndkLibsToJar, ndkBinariesToJar, ndkBinariesToJar16, ndkDataToJar 
    } 
    
    task ndkLibsToJar(type: Zip, dependsOn: 'ndkBuild', description: 'Create a JAR of the native libs') { 
        destinationDir new File(buildDir, 'libs') 
        baseName 'ndk-libs' 
        extension 'jar' 
        from(new File(buildDir, 'libs')) { 
         include '**/*.so' 
        } 
        into 'lib/' 
    } 
    
    
    task ndkBinariesToJar(type: Zip, dependsOn: 'ndkBuild', description: 'Create a JAR of the native binaries') { 
        destinationDir new File(buildDir, 'libs') 
        baseName 'ndk-binaries' 
        extension 'jar' 
        from(new File(buildDir, 'libs')) { 
         include '**/arp-scan' 
         include '**/arpspoof' 
         include '**/iptables' 
        } 
        into 'assets/binaries/android-9' 
    } 
    
    task ndkBinariesToJar16(type: Zip, dependsOn: 'ndkBuild16', description: 'Create a JAR of the native binaries for Android 16+') { 
        destinationDir new File(buildDir, 'libs') 
        baseName 'ndk-binaries-16' 
        extension 'jar' 
        from(new File(buildDir, 'android-16/libs')) { 
         include '**/arp-scan' 
         include '**/arpspoof' 
         include '**/iptables' 
        } 
        into 'assets/binaries/android-16' 
    } 
    
    
    task ndkDataToJar(type: Zip, dependsOn: 'ndkBuild', description: 'Create a JAR of the native data') { 
        destinationDir new File(buildDir, 'libs') 
        baseName 'ndk-data' 
        extension 'jar' 
        from(new File('src/main/jni/arp-scan')) { 
         include '**/ieee-iab.txt' 
         include '**/ieee-oui.txt' 
         include '**/mac-vendor.txt' 
        } 
        into 'assets/data/' 
    } 
    
    
    task ndkBuild(type: Exec, description: 'Compile JNI source via NDK') { 
        def ndkDir = project.plugins.findPlugin('com.android.application').sdkHandler.getNdkFolder() 
        println(ndkDir) 
        commandLine "$ndkDir/ndk-build.cmd", 
          'NDK_PROJECT_PATH=build', 
          'APP_BUILD_SCRIPT=src/main/jni/Android.mk', 
          'NDK_APPLICATION_MK=src/main/jni/Application.mk', 
          '-j1' 
    } 
    
    task ndkBuild16(type: Exec, description: 'Compile JNI source via NDK for Android 16+') { 
        def ndkDir = project.plugins.findPlugin('com.android.application').sdkHandler.getNdkFolder() 
        println(ndkDir) 
        commandLine "$ndkDir/ndk-build.cmd", 
          'NDK_PROJECT_PATH=build/android-16', 
          'APP_BUILD_SCRIPT=src/main/jni/Android.mk', 
          'NDK_APPLICATION_MK=src/main/jni/Application-16.mk', 
          '-j1' 
    } 
    

    これは、ログの構築である。また、jni/iptables/custom-android-iptablesthisリポジトリの内容を追加してくださいjni/arp-scan/arp-scan

  • thisリポジトリの内容を追加しすぎていることを確認してください

    Information:Gradle tasks [:androidnetspoof:assembleDebug] 
    C:\Users\Jang\AppData\Local\Android\sdk\ndk-bundle 
    C:\Users\Jang\AppData\Local\Android\sdk\ndk-bundle 
    :androidnetspoof:preBuild 
    :androidsupportv4preferencefragment:compileLint UP-TO-DATE 
    :androidnetspoof:preDebugBuild 
    :androidsupportv4preferencefragment:copyReleaseLint UP-TO-DATE 
    :androidnetspoof:checkDebugManifest UP-TO-DATE 
    :androidsupportv4preferencefragment:preBuild 
    :androidnetspoof:preReleaseBuild UP-TO-DATE 
    :androidsupportv4preferencefragment:preBuild UP-TO-DATE 
    :androidsupportv4preferencefragment:preReleaseBuild 
    :androidnetspoof:generateDebugBuildConfig UP-TO-DATE 
    :androidsupportv4preferencefragment:checkReleaseManifest 
    :androidsupportv4preferencefragment:preDebugAndroidTestBuild UP-TO-DATE 
    :androidsupportv4preferencefragment:preDebugBuild UP-TO-DATE 
    :androidsupportv4preferencefragment:preDebugUnitTestBuild UP-TO-DATE 
    :androidsupportv4preferencefragment:preReleaseUnitTestBuild UP-TO-DATE 
    :androidsupportv4preferencefragment:prepareComAndroidSupportSupportV42300Library UP-TO-DATE 
    :androidnetspoof:generateDebugAssets UP-TO-DATE 
    :androidnetspoof:generateDebugResValues UP-TO-DATE 
    :androidsupportv4preferencefragment:preReleaseBuild UP-TO-DATE 
    :androidsupportv4preferencefragment:prepareReleaseDependencies 
    :androidnetspoof:ndkBuild 
    :androidsupportv4preferencefragment:compileReleaseAidl UP-TO-DATE 
    :androidsupportv4preferencefragment:compileReleaseRenderscript UP-TO-DATE 
    :androidsupportv4preferencefragment:generateReleaseBuildConfig UP-TO-DATE 
    :androidsupportv4preferencefragment:generateReleaseAssets UP-TO-DATE 
    :androidsupportv4preferencefragment:mergeReleaseAssets UP-TO-DATE 
    :androidsupportv4preferencefragment:generateReleaseResValues UP-TO-DATE 
    :androidsupportv4preferencefragment:generateReleaseResources UP-TO-DATE 
    :androidsupportv4preferencefragment:mergeReleaseResources UP-TO-DATE 
    :androidsupportv4preferencefragment:processReleaseManifest UP-TO-DATE 
    :androidsupportv4preferencefragment:processReleaseResources UP-TO-DATE 
    :androidsupportv4preferencefragment:generateReleaseSources UP-TO-DATE 
    :androidsupportv4preferencefragment:processReleaseJavaRes UP-TO-DATE 
    :androidsupportv4preferencefragment:compileReleaseJavaWithJavac UP-TO-DATE 
    :androidsupportv4preferencefragment:extractReleaseAnnotations UP-TO-DATE 
    :androidsupportv4preferencefragment:mergeReleaseProguardFiles UP-TO-DATE 
    :androidsupportv4preferencefragment:packageReleaseJar UP-TO-DATE 
    :androidsupportv4preferencefragment:compileReleaseNdk UP-TO-DATE 
    :androidsupportv4preferencefragment:packageReleaseJniLibs UP-TO-DATE 
    :androidsupportv4preferencefragment:packageReleaseLocalJar UP-TO-DATE 
    :androidsupportv4preferencefragment:packageReleaseRenderscript UP-TO-DATE 
    :androidsupportv4preferencefragment:packageReleaseResources UP-TO-DATE 
    :androidsupportv4preferencefragment:bundleRelease UP-TO-DATE 
    process_begin: CreateProcess(NULL, realpath obj, ...) failed. 
    process_begin: CreateProcess(NULL, realpath obj, ...) failed. 
    Warning:warning: overriding commands for target `/extensions/gen_initext.c' 
    Warning:warning: ignoring old commands for target `/extensions/gen_initext.c' 
    process_begin: CreateProcess(NULL, realpath obj, ...) failed. 
    Warning:warning: overriding commands for target `/extensions/gen_initext.c' 
    Warning:warning: ignoring old commands for target `/extensions/gen_initext.c' 
    process_begin: CreateProcess(NULL, realpath obj, ...) failed. 
    Warning:warning: overriding commands for target `/extensions/gen_initext.c' 
    Warning:warning: ignoring old commands for target `/extensions/gen_initext.c' 
    C:\Users\Jang\AppData\Local\Android\sdk\ndk-bundle\build\core\build-binary.mk 
    Warning:(464) warning: overriding commands for target `build/obj/local/armeabi/objs/ext/extensions/libipt_standard.o' 
    Warning:(464) warning: ignoring old commands for target `build/obj/local/armeabi/objs/ext/extensions/libipt_standard.o' 
    Warning:(464) warning: overriding commands for target `build/obj/local/armeabi-v7a/objs/ext/extensions/libipt_standard.o' 
    Warning:(464) warning: ignoring old commands for target `build/obj/local/armeabi-v7a/objs/ext/extensions/libipt_standard.o' 
    Warning:(464) warning: overriding commands for target `build/obj/local/mips/objs/ext/extensions/libipt_standard.o' 
    Warning:(464) warning: ignoring old commands for target `build/obj/local/mips/objs/ext/extensions/libipt_standard.o' 
    Warning:(464) warning: overriding commands for target `build/obj/local/x86/objs/ext/extensions/libipt_standard.o' 
    Warning:(464) warning: ignoring old commands for target `build/obj/local/x86/objs/ext/extensions/libipt_standard.o' 
    [armeabi] Install  : arp-scan => libs/armeabi/arp-scan 
    [armeabi] Install  : arpspoof => libs/armeabi/arpspoof 
    mkdir -p /extensions/ 
    The syntax of the command is incorrect. 
    make.exe: *** [/extensions/gen_initext.c] Error 1 
    :androidsupportv4preferencefragment:prepareReleaseDependencies FAILED 
    Error:Execution failed for task ':androidnetspoof:ndkBuild'. 
    > Process 'command 'C:\Users\Jang\AppData\Local\Android\sdk\ndk-bundle/ndk-build.cmd'' finished with non-zero exit value 2 
    
  • +0

    手動でndkパーツを作成しようとしましたか?またlocal.propertiesを投稿できますか? –

    +0

    これはプロジェクトリンクです:https://github.com/w-shackleton/android-netspoof – thefriend

    +0

    'mkdir -p/extensions/ コマンドの構文が間違っています。'このmkdirがあなたの '/'適切な権限を持っていない可能性があります。たぶん、このアプリケーションを動作させるためには、rootアクセスが必要ですか? –

    答えて

    1

    それが動作しない場合は、それが並列に構築していないことを確認する-j1するndkBuildタスクcommandLineのフラグを変更します。ビルドログを掲示した後

    commandLine "$ndkDir/ndk-build.cmd", 
         'NDK_PROJECT_PATH=build', 
         'APP_BUILD_SCRIPT=src/main/jni/Android.mk', 
         'NDK_APPLICATION_MK=src/main/jni/Application.mk', 
         '-j1' 
    

    編集を

    このエラーは、メイクファイルcustom-android-iptabes/Android.mkmkdir -p /extensions/を実行するスクリプトがあり、UNIXに基づいているため、このエラーが発生しますが、y WindowsはのDOSに基づいてビルドしようとしています。あなたがする必要がどのような

    には、例えば、この場合には、mkdir \extenstions\

    +0

    上記のすべてのことを行ったが、私が手作業でndkをビルドしようとすると、私はprolemを持っています:make.exeが動作を停止しました。 – thefriend

    +0

    ええ、それは変です。私はすでにプロジェクトを成功裏に構築しました。 build.gradleファイル全体とビルドログ全体を投稿するのはどうですか? –

    +0

    編集を確認する –

    0

    環境変数NDK_TOOLCHAIN_VERSION 4.9 への設定は問題に

    を解決することができ、ベースのDOSにそれらのUNIXベースのスクリプトを翻訳することですenter image description here

    関連する問題