2013-03-23 28 views
0

我正在開發一個cocos2d-x項目,因爲它的通用它在Android和iOS上的作品。致命的錯誤,沒有這樣的文件或目錄(eclipse安卓)

我最近使用flite添加了文本到語音功能。在xcode中,我所做的只是使用flite,將頭文件和c文件的文件夾拖放到我的xcode項目中,然後我可以包含它的頭文件並使用它。那裏沒有問題。

但是在eclipse中,我無法讓編譯器看到這些文件,並且它不斷地轟炸着我提到的致命錯誤。具體來說:致命錯誤:flite.h沒有這樣的文件或目錄。

我試過在C/C++一般下的eclipse包含部分中包含文件夾,但沒有運氣。我認爲這可能與我的android.mk文件有關,如何爲此設置此指南將不勝感激。在附註中,我的項目已設置好,以便我的.cpp和.h文件存在於我的計算機的其他位置,而不是在我的實際項目中。同樣對於我的flite源文件。 (但是我嘗試將它們添加到我的項目中,但是出於絕望,但編譯器仍然找不到它們)

感謝您的時間。 PS:如何引用flite,它是一個庫/框架等?

編輯 我試着修改我的Android.mk文件,找到flite頭文件。我補充說明如下

LOCAL_PATH := $(call my-dir) 



include $(CLEAR_VARS) 

LOCAL_MODULE := game_shared 

LOCAL_MODULE_FILENAME := libgame 

LOCAL_SRC_FILES := hellocpp/main.cpp \ 
       ../../Classes/AppDelegate.cpp \ 
       ../../Classes/HelloWorldScene.cpp \ 
       ../../Classes/CCLabelTTFExtension.cpp \ 
       ../../Classes/menuScene.cpp \ 
       ../../Classes/text_Parse.cpp \ 
       ../../Classes/FileTS.cpp 
LOCAL_C_INCLUDES := $(LOCAL_PATH)/../../Classes/ 
#my addition 
LOCAL_C_INCLUDES += $(LOCAL_PATH)/flite/ 


dirs := $(shell /flite -type d) 

cfilestemp1 := $(shell find /src -type d) 
cfilestemp2 := $(shell find $(cfilestemp1) -name *.c) 
cfilestemp3 := $(sort $(cfilestemp2)) 
cfiles := $(subst $(LOCAL_PATH)/,,$(cfilestemp3)) 

LOCAL_SRC_FILES += \ 
      $(cfiles) 
#end my addition 

LOCAL_WHOLE_STATIC_LIBRARIES := cocos2dx_static cocosdenshion_static  cocos_extension_static 

include $(BUILD_SHARED_LIBRARY) 

$(call import-module,CocosDenshion/android) \ 
$(call import-module,cocos2dx) \ 
$(call import-module,extensions) 


include $(CLEAR_VARS) 

這讓我更接近,好了,給了我不同的錯誤。現在,編譯器在我的FileTS.cpp文件中抱怨未定義的引用,該文件是在我的項目中使用flite的文件。 (注意:我的flite頭文件和源文件現在已添加到我的項目中的jni文件夾中)

+0

你的flite lib是一個編譯版本還是你想從源代碼編譯它?最簡單的方法是將所有源代碼放入Classes文件夾中,並在LOCAL_SRC_FILES(如mainScene.cpp)中列出cpp文件。這將確保您的圖書館獲得內置到您的遊戲對象文件。 – 2013-03-25 22:58:38

+0

如果flite是一個編譯版本,那麼很難說,因爲我們不知道它的目標是哪個處理器。如果lib是爲非arm處理器編譯的,那麼你可能不能使用它。 – 2013-03-25 23:00:28

+0

我的目標從源代碼編譯它,但它包含了相當多的.c文件,我相信所有的人都需要手工列出 – Sam 2013-03-25 23:09:35

回答

0

最簡單的方法是將所有源代碼放入Classes文件夾中,並列出LOCAL_SRC_FILES中的cpp文件,例如mainScene.cpp。這將確保您的圖書館獲得內置到您的遊戲對象文件。

+0

你能提供更多的細節嗎? – Josh 2015-09-07 11:59:47

+0

@Josh這個答案可能會過時,因爲它的目標是cocos2d-x 1.x.他們可能會改變他們從源頭上構建的結構。 – 2015-09-07 22:29:12

+0

oh cr4p ...謝謝你告訴我! – Josh 2015-09-08 09:07:00

相關問題