2012-06-22 101 views
4

我想为android构建tesseract。 我已经把正方体的样本文件夹android ndk-build error

C:\Android_NDK\android-ndk-r8\samples\tesseracttesseract文件夹我有tesseract-3.00文件夹,文件夹leptonlib-1.66libjpeg文件夹。 每当我尝试使用ndk-build构建代码时。 我得到错误的

C:/Android_NDK/android-ndk-r8/build/core/build-binary.mk:240: *** target pattern contains no '%'. Stop.

我使用NDK-建立这样,在命令提示符 C:\Android_NDK\android-ndk-r8\samples\tesseract\jni>C:\Android_NDK\android-ndk-r8/ndk-build

Application.mk文件内容中的tesseract/JNI文件夹试图与
# ARMv7 is significanly faster due to the use of the hardware FPU
APP_STL := gnustl_static
APP_ABI := armeabi armeabi-v7a
APP_OPTIM := release
APP_CPPFLAGS += -fexceptions -frtti

Android.mk file contents in tesseract/jni folder 
# NOTE: You must set these variables to their respective source paths before 
# compiling. For example, set LEPTONICA_PATH to the directory containing 
# the Leptonica configure file and source folders. Directories must be 
# root-relative, e.g. TESSERACT_PATH := /home/username/tesseract-3.00 
# 
# To set the variables, you can run the following shell commands: 
# export TESSERACT_PATH=<path-to-tesseract> 
# export LEPTONICA_PATH=<path-to-leptonica> 
# export LIBJPEG_PATH=<path-to-libjpeg> 
# 
# Or you can fill out and uncomment the following definitions: 
# TESSERACT_PATH := <path-to-tesseract> 
# LEPTONICA_PATH := <path-to-leptonica> 
# LIBJPEG_PATH := <path-to-libjpeg> 

ifeq "$(TESSERACT_PATH)" "" 
    $(error You must set the TESSERACT_PATH variable to the Tesseract source \ 
     directory. See README and jni/Android.mk for details) 
endif 

ifeq "$(LEPTONICA_PATH)" "" 
    $(error You must set the LEPTONICA_PATH variable to the Leptonica source \ 
     directory. See README and jni/Android.mk for details) 
endif 

ifeq "$(LIBJPEG_PATH)" "" 
    $(error You must set the LIBJPEG_PATH variable to the Android JPEG \ 
     source directory. See README and jni/Android.mk for details) 
endif 

# Just build the Android.mk files in the subdirs 
include $(call all-subdir-makefiles) $(LIBJPEG_PATH)/Android.mk 

Cygwin但同样的问题。

期待您的回复。

谢谢。

+0

你可以发表你的MK文件,以便我们能看到更多的信息。 – codetiger

+0

@codetiger我附上了mk文件的详细信息。 – Mukunda

+1

请检出这[问题](http://stackoverflow.com/questions/601516/cygwin-make-error-target-pattern-contains-no)和[论坛帖子](http://www.daniweb.com /software-development/cpp/threads/334530/target-pattern-contains-no-.-stop)。你的错误似乎与Windows路径中的':'符号相关,这被视为模式匹配 –

回答

2

我觉得你下面的代码不会被添加到您的buid.gradle文件。这个解决方案的Android FO工作室

sourceSets.main { 
    jniLibs.srcDir 'src/main/libs' 
    jni.srcDirs = [] //disable automatic ndk-build call 
}