2011-12-18 13 views
15

Mam problem z tym prostym zadaniem przez ostatnie kilka godzin.Jak określić katalog dla NDK_MODULE_PATH

Mam NDK Moduły katalogu root mojego Android projektu i mam następujących w moim Android.mk folderu JNI

LOCAL_PATH := $(call my-dir) 
include $(CLEAR_VARS) 
NDK_MODULE_PATH := $(LOCAL_PATH)/../ndk-modules 
... 
$(call import-module,mymodule) 

Kiedy zbudować plik mk, mam

Android NDK: /MyApp/jni/Android.mk: Cannot find module with tag 'mymodule' in import path  
Android NDK: Are you sure your NDK_MODULE_PATH variable is properly defined ?  

Co ja tu robię źle? Jak poprawnie określić ścieżkę?

AKTUALIZACJA:

Dane techniczne były prawidłowe. Miałem problem w katalogu mymodule. Przepraszam za zamieszanie.

Odpowiedz

26

NDK_MODULE_PATH musi być w ścieżce . Chciałem podać go w moim pliku Android.mk więc dodałem tę linię przed linią import-module:

$(call import-add-path,my_relative_path) 
+3

można powiedzieć, co masz na myśli przez -add-path i my_relative_path –

+0

jak ten '' '$ (wywołanie import-add-path,/home/bluemix/tmp/android-ffmpeg-tutorial01-master/jni) $ (wywołanie import-moduł, ffmpeg-2.6.2/android/ramię) '' ' –

+0

sprawdź następującą implementację. Więcej sensu https://github.com/julienr/protobuf-android – CoDe

1

$ (call import-moduł, mymodule) wyszuka $ NDK_MODULE_PATH/mymodule, można ustawić ścieżkę do najwyższego poziomu w projekcie lub utwórz folder o nazwie mymodule pod NDK modułów

+0

Jeśli Android.mk jest w PRJ/JNI, następnie $ LOCAL_PATH/.. powinno być na górze. – pinxue

3

W moim przypadku, naprawiłem go realizując NDK wyszukuje:

$NDK_MODULE_PATH/module_name/Android.mk 

ale moja „module_name” to projekt Eclipse gdzie Android.mk jest pod:

$NDK_MODULE_PATH/module_name/jni/Android.mk 

Więc NDK nie może go znaleźć. Naprawiłem to:

  1. Przenieś nazwę modułu/jni/* na "somewhere/module_name".
  2. W Android.mk:

    $(call import-add-path, /path/to/somewhere) 
    $(call import-module,module_name) 
    
Powiązane problemy