2016-06-20 10 views
1

似たような話題がたくさんありましたが、どれも役に立たなかったと思います。私は2日間以上これを実行しようとしています。 コンパイル時にndk-build.cmdが失敗しました。(opencv face detect)

Application.mk

APP_STL := gnustl_static 
APP_CPPFLAGS := -frtti -fexceptions 
APP_ABI := armeabi-v7a 
APP_PLATFORM := android-23 

を構築し、私は顔検出サンプルを実行したいと私はNDKにこだわっているAndroid.mk

LOCAL_PATH := $(call my-dir) 

include $(CLEAR_VARS) 

OPENCV_CAMERA_MODULES:=on 
OPENCV_INSTALL_MODULES:=on 
OPENCV_LIB_TYPE:=SHARED 
include C:/Users/dpach/OpenCV-android-sdk/sdk/native/jni/OpenCV.mk 

LOCAL_SRC_FILES := DetectionBasedTracker_jni.cpp 
LOCAL_C_INCLUDES += $(LOCAL_PATH) 
LOCAL_LDLIBS  += -llog -ldl 

LOCAL_MODULE  := detection_based_tracker 

include $(BUILD_SHARED_LIBRARY) 

app.gradle

apply plugin: 'com.android.application' 

android { 
    compileSdkVersion 23 
    buildToolsVersion "23.0.3" 
    defaultConfig { 
     applicationId "threewe.testopencv" 
     minSdkVersion 21 
     targetSdkVersion 23 
     versionCode 1 
     versionName "1.0" 
    } 
    sourceSets.main { 
     jniLibs.srcDir 'src/main/libs' 
     jni.srcDirs = [] //disable automatic ndk-build call 
    } 
    task ndkBuild(type: Exec) { 
     commandLine 'C:\\Users\\dpach\\android-ndk-r12\\ndk-build.cmd', '-C', file('jni').absolutePath 
    } 
    tasks.withType(JavaCompile) { 
     compileTask -> compileTask.dependsOn ndkBuild 

    } 

    buildTypes { 
     release { 
      minifyEnabled false 
      proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' 
     } 
    } 
} 

dependencies { 
    compile fileTree(include: ['*.jar'], dir: 'libs') 
    compile 'com.android.support:appcompat-v7:23.4.0' 
    compile 'com.android.support.constraint:constraint-layout:1.0.0-alpha2' 
    compile project(':libraries:opencv') 
} 

エラー

エラーの3210
System nie moľe odnale«† okre?lonej ?cieľki. 
make: *** [C:/Users/dpach/AndroidStudioProjects/TestOpenCv/app/obj/local/armeabi-v7a/objs/detection_based_tracker/DetectionBasedTracker_jni.o] Error 1 
make: Leaving directory `C:/Users/dpach/AndroidStudioProjects/TestOpenCv/app/jni' 
:app:ndkBuild FAILED 
Error:Execution failed for task ':app:ndkBuild'. 
> Process 'command 'C:\Users\dpach\android-ndk-r12\ndk-build.cmd'' finished with non-zero exit value 2 

翻訳:

「システムは指定されたパスを見つけることができませんが」私は、パスを確認したのだが、私もそこに入れ、別のプロジェクトからファイルが存在するが、結果は同じです。私もコンソールからndk-build.cmd manualyを実行しようとしましたが、結果は同じですので、これはAndroid Studioの問題ではありません。私は私が行うことができ、より何見当がつかない:(

// EDIT

は、真に開かれたissueあなたを参照してください、これはNDKのダウンロードページバグです

make: Entering directory `C:/Users/dpach/AndroidStudioProjects/TestOpenCv/app/jni' 
[armeabi-v7a] "Compile++ thumb": "detection_based_tracker <= DetectionBasedTracker_jni.cpp" 
C:/Users/dpach/android-ndk-r12/build//../toolchains/arm-linux-androideabi-4.9/prebuilt/windows-x86_64/bin/arm-linux-androideabi-g++ -MMD -MP -MF C:/Users/dpach/AndroidStudioProjects/TestOpenCv/app/obj/local/armeabi-v7a/objs/detection_based_tracker/DetectionBasedTracker_jni.o.d -fpic -ffunction-sections -funwind-tables -fstack-protector-strong -no-canonical-prefixes -g -march=armv7-a -mfpu=vfpv3-d16 -mfloat-abi=softfp -fno-exceptions -fno-rtti -mthumb -Os -DNDEBUG -I"C:/Users/dpach/OpenCV-android-sdk/sdk/native/jni/include/opencv" -I"C:/Users/dpach/OpenCV-android-sdk/sdk/native/jni/include" -IC:/Users/dpach/AndroidStudioProjects/TestOpenCv/app/jni -IC:/Users/dpach/android-ndk-r12/build//../sources/cxx-stl/gnu-libstdc++/4.9/include -IC:/Users/dpach/android-ndk-r12/build//../sources/cxx-stl/gnu-libstdc++/4.9/libs/armeabi-v7a/include -IC:/Users/dpach/android-ndk-r12/build//../sources/cxx-stl/gnu-libstdc++/4.9/include/backward -IC:/Users/dpach/AndroidStudioProjects/TestOpenCv/app/jni -DANDROID -fPIC -DANDROID -fsigned-char -Wa,--noexecstack -Wformat -Werror=format-security -frtti -fexceptions -isystem C:/Users/dpach/android-ndk-r12/build//../platforms/android-23/arch-arm/usr/include -c C:/Users/dpach/AndroidStudioProjects/TestOpenCv/app/jni/DetectionBasedTracker_jni.cpp -o C:/Users/dpach/AndroidStudioProjects/TestOpenCv/app/obj/local/armeabi-v7a/objs/detection_based_tracker/DetectionBasedTracker_jni.o 
+0

コマンドラインから 'ndk-build V = 1'を実行してください(正しい' -C'を忘れないでください)、どのようなコンパイルステップが問題を引き起こしたかがわかります。 ** DetectionBasedTracker_jni.cpp **ファイルが** Android.mk **と同じ** jni **ディレクトリにあることを確認してください。 –

+0

@AlexCohnお時間をいただきありがとうございます。私は、パラメータを追加し、トピックに出力を貼り付けました。あなたはそれについてアドバイスできますか?はい、私はこの.cppファイルがAndroid.mkとしてjniディレクトリにあることを確信しています – Fixus

+1

そのファイルC:/Users/dpach/android-ndk-r12/toolchains/arm-linux-androideabi-4.9/prebuilt/windowsを確認してください-x86_64/bin/arm-linux-androideabi-g ++も存在します。おそらく、NDK r12のアップデート版をダウンロードしてください。 –

答えて

0

V=1パラメータを追加しました。

あなたはより頻繁に更新されるGitHubの上wiki page使用することができます。

をお使いの場合あなたの64ビット版Windowsでは32ビット版を使用していますが、これは最適ではありません。お使いのOSに最新の安定版r12bをダウンロードできます。

関連する問題