Makefile 设置文件源文件限制(android ndk)
我想用ndk构建我的android项目,所以我创建了如下make文件:Makefile 设置文件源文件限制(android ndk),makefile,android-ndk,Makefile,Android Ndk,我想用ndk构建我的android项目,所以我创建了如下make文件: LOCAL_PATH := $(call my-dir) include $(CLEAR_VARS) LOCAL_MODULE := game_logic LOCAL_SRC_FILES := AppDelegate.cpp\ MainMenuScene.cpp\ ArtTestScene.cpp\ A
LOCAL_PATH := $(call my-dir)
include $(CLEAR_VARS)
LOCAL_MODULE := game_logic
LOCAL_SRC_FILES := AppDelegate.cpp\
MainMenuScene.cpp\
ArtTestScene.cpp\
AppDelegate.cpp\
objb/Config.cpp\
objb/ExtendedString.cpp\
objb/json.cpp\
objb/TimeStamper.cpp \
Objects/Actor.cpp \
Objects/BackGround.cpp \
LOCAL_C_INCLUDES := $(LOCAL_PATH)/../../cocos2dx \
$(LOCAL_PATH)/../../cocos2dx/platform \
$(LOCAL_PATH)/../../cocos2dx/include \
$(LOCAL_PATH)/../../CocosDenshion/include \
$(LOCAL_PATH)/../../cocos2dx/lua_support \
objb \
LOCAL_LDLIBS := -L$(call host-path, $(LOCAL_PATH)/../android/libs/$(TARGET_ARCH_ABI)) \
-lcocos2d -lcocosdenshion \
-L$(call host-path, $(LOCAL_PATH)/../../cocos2dx/platform/third_party/android/libraries/$(TARGET_ARCH_ABI)) -lcurl
include $(BUILD_SHARED_LIBRARY)
问题是我得到了这个错误:
jni/../../Classes/Android.mk:12: *** recipe commences before first target. Stop.
但是当我减少源文件(任何源文件)时,我没有得到这个错误!但我的项目从未生成,因为未生成所需的源文件。此错误意味着(a)有一行以制表符开头,并且(b)make不知道任何其他类型的行(例如变量赋值等) 在这种情况下,make假设该行是规则配方的一部分,但它前面没有规则(没有目标) 问题在于,您的产品线:
objb/json.cpp\
在反斜杠后有一个空格。因此,反斜杠不会转义换行符,因此make不认为下一行是变量赋值的一部分。因为它以一个标签开始
在makefiles中,确保没有任何无关的尾随空格是至关重要的。许多现代编辑器都有这样的模式:在编辑makefile时启用它们。您
包含了两个我们看不到的东西,它们的名称甚至没有在这个makefile(或makefile片段)中定义。这里没有命令,所以问题出在您包含的一个文件中(或者makefile的内容可能比您向我们展示的更多)。如果我们能看到Android.mk
(至少第12行),我们可能会有机会。我包含的源代码是Android.mk