2012-04-03 5 views
2

はので、私はこのように私のメイクファイルを作成:メイクファイルソースファイルの上限(アンドロイドNDK)

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) 

problomは、私はこのエラーを取得することです:

jni/../../Classes/Android.mk:12: *** recipe commences before first target. Stop. 

しかし、私はソースファイル(任意のソースファイル)私はこのエラーを取得していない削減する!しかし、私のプロジェクトはビルドされていないため、必要なソースファイルが作成されませんでした。

+0

私たちが見ることができないものと、このメイクファイル(またはメークファイルフラグメント)で名前が定義されていないものを 'インクルード 'します。ここにはコマンドはありませんので、問題はあなたが 'include'しているファイルの1つにあります(または、あなたが私たちに示しているものよりももっとmakefileにあるかもしれません)。 'Android.mk'(少なくとも12行目)を見ることができたらチャンスがあるかもしれません。 – Beta

+0

ソースiはandroid.mkです – Ocelot

答えて

6

このエラーは、(a)TAB文字で始まる行があり、(b)他の種類の行ではないことこのような)などの可変割当として

この場合行がルールのためのレシピの一部であることが意図されていることを前提とし、ないルール(無標的)がその前には存在しない作ります。

    objb/json.cpp\ 

バックスラッシュの後にスペースがあります。

問題は、あなたの行があることです。そのため、バックスラッシュは改行をエスケープしていないので、makeは次の行が変数代入の一部であるとは考えません。それは... TABで

を開始しますので、それはあなたが任意の余分な末尾の空白を持っていないことを確認するためのmakefileで重要です。現代のエディタの多くは、これを示すモードを持っています。

関連する問題