make:***未指定目标且未找到makefile。停止

时间:2013-07-25 12:16:59

标签: android opencv android-ndk makefile

此问题看起来与make *** no targets specified and no makefile found. stop重复,但我的问题略有不同,我也尝试了这个解决方案但对我不起作用。
我正在开发OpenCV库,我从示例项目开始,但这给我带来了以下错误。请帮我解决这个错误。

17:31:25 **** Auto Build of configuration Default for project MyFirstOpenCVJNI ****
make 
make: *** No targets specified and no makefile found.  Stop.

17:31:25 Build Finished (took 122ms)

以下是我的Android.mk文件
//Android.mk

LOCAL_PATH := $(call my-dir)

include $(CLEAR_VARS)

OPENCV_LIB_TYPE:=STATIC
OPENCV_INSTALL_MODULES:=on

include ../includeOpenCV.mk
include $(OPENCV_MK_PATH)

LOCAL_MODULE    := first-opencvjni
LOCAL_SRC_FILES := first-opencvjni.cpp
LOCAL_LDLIBS +=  -llog -ldl

include $(BUILD_SHARED_LIBRARY)

2 个答案:

答案 0 :(得分:8)

经过多次搜索,我解决了错误,  Windows操作系统上的right click on project->Properties->C/C++ Build(left side)->Builder Settings->uncheck the "Use default build command" checkbox->enter "${NDKROOT}/ndk-build.cmd" in Build command checkbox,请参见下图enter image description here

在做所有事情之前你需要将环境设置中的NDKROOT环境变量设置为你的ndk目录的根文件夹,在我的情况下它是C:\ adt-bundle-windows-x86-20130522 \ android-ndk-r8e。
如果有任何困难或疑问,请告诉我。

答案 1 :(得分:1)

默认情况下,

make将执行名为makefileMakefile的文件,makefile名称为Android.mk,而不是执行make {{1}将其作为

执行

$~ make

即使我想知道谁在执行$~ make -f Android.mk?您是手动执行还是用某些脚本编写?如果用脚本编写,尝试将makefile命令更改为make,如果您无法更改脚本(可能是由于某些原因),请将make -f Android.mk重命名为{{1}并检查它。