使用Android+Eclipse+jni开发时,如果遇到:format not a string literal and no format arguments 其解决方法为:修改Android.mk,添加TARGET_FORMAT_STRING_CFLAGS := -Wformat,最终Android.mk文件如下:
LOCAL_PATH := $(call my-dir)
include $(CLEAR_VARS)
OpenCV_INSTALL_MODULES:=on
OPENCV_CAMERA_MODULES:=off
OPENCV_LIB_TYPE:=STATIC
ifeq ("$(wildcard $(OPENCV_MK_PATH))","")
include ../../opencv2.4.9/native/jni/OpenCV.mk
else
include $(OPENCV_MK_PATH)
endif
LOCAL_MODULE := cartoonifier#//so.文件名
LOCAL_SRC_FILES := jni_part.cpp#//C++类名
LOCAL_SRC_FILES += ../../Cartoonifier_Desktop/cartoon.cpp
LOCAL_SRC_FILES += ../../Cartoonifier_Desktop/ImageUtils_0.7.cpp
LOCAL_C_INCLUDES += $(LOCAL_PATH)/../../Cartoonifier_Desktop
LOCAL_LDLIBS += -llog -ldl -lm
TARGET_FORMAT_STRING_CFLAGS := -Wformat
#APP_CFLAGS += -Wno-error=format-security
include $(BUILD_SHARED_LIBRARY)