Подтвердить что ты не робот

NDK не может найти каталог приложения

При запуске команды ndk-build возникает следующая ошибка:

Android NDK: Could not find application project directory !    
Android NDK: Please define the NDK_PROJECT_PATH variable to point to it.

Содержимое моего файла Android.mk:

LOCAL_PATH := $(call my-dir)

include $(CLEAR_VARS)

LOCAL_MODULE := FRE
LOCAL_SRC_FILES := FlashRuntimeExtensions.so
include $(PREBUILT_SHARED_LIBRARY)

include $(CLEAR_VARS)

LOCAL_MODULE := NativeQCAR
LOCAL_SRC_FILES := main.c
LOCAL_SHARED_LIBRARIES := FRE
include $(BUILD_SHARED_LIBRARY)

Добавление следующей строки не помогает:

NDK_PROJECT_PATH = C:/Users/Wessel/Dropbox/workspace/eclipse/NativeQ
4b9b3361

Ответ 1

NDK_PROJECT_PATH - это переменная среды, поэтому вам не нужно включать ее в файл Android.mk. Является ли nkd-build запущен в каталоге проекта?

Подробнее читайте документы в docs/HOWTO.html в папке NDK, где я читаю

Начиная с NDK r4, вы можете просто поместить файл в $PROJECT/jni/ и запустите "ndk-build" script из вашего дерева проектов.

Если вы хотите использовать 'ndk-build', но поместите файл в другое место, используйте переменную переопределения GNU Make как:

ndk-build NDK_APPLICATION_MK=/path/to/your/Application.mk

Ответ 2

Вы можете использовать следующую команду

ndk-build -C your_project_path

Надеюсь, это ответит на ваш вопрос.

Ответ 3

Я не нашел ни одного ответа, который был бы удовлетворительным для меня, возможно, это зависит от того, пытаетесь ли вы создать существующее приложение, создать новый или, возможно, переносить какое-то существующее родное приложение. Эти рекомендации работают с android-ndk-r9b, но должны работать с последними релизами

Файл make build -local.mk, используемый ndk-build, сделает некоторые догадки о местоположении файла make-приложения.

По умолчанию кажется, что NDK ориентирован на то, что вы упаковываете файлы приложений NDK Application.mk и Android.mk под подкаталог jni. Это работает хорошо, и вы можете просто использовать командную строку:

$ ndk-build

Если вы не хотите иметь подкаталог jni, например, возможно, вы переносите инструмент командной строки linux на Android, возможно, вам подходит следующее:

Создайте пустой AndroidManifest.xml файл

Теперь создайте файл Application.mk со следующим содержимым:

APP_BUILD_SCRIPT := Android.mk

Затем создайте файл Android.mk, например:

LOCAL_PATH := $(call my-dir)
include $(CLEAR_VARS)
LOCAL_SRC_FILES := foo.c
LOCAL_MODULE := foo
include $(BUILD_EXECUTABLE)

Чтобы создать приложение, используйте:

$ ndk-build NDK_APPLICATION_MK=`pwd`/Application.mk

Ответ 4

ndk-build NDK_APPLICATION_MK=path\to\your\src\main\jni\Application.mk NDK_PROJECT_PATH=path\to\your\module\src\main

Ответ 5

Вам нужно указать 3 вещи.

NDK_PROJECT_PATH - the location of your project
NDK_APPLICATION_MK - the path of the Application.mk file
APP_BUILD_SCRIPT - the path to the Android.mk file

Это необходимо для переопределения значений по умолчанию для сборки script, которая ожидает, что все будет в папке jni.

При вызове ndk-build используйте

ndk-build NDK_PROJECT_PATH=/path/to/proj NDK_APPLICATION_MK=/path/to/Application.mk

В Application.mk добавить

APP_BUILD_SCRIPT := /path/to/Android.mk

Ответ 6

Это то, что я использую cd в каталоге проекта и выполняю:

ndk-build NDK_PROJECT_PATH=.

введите описание изображения здесь

Ответ 7

Следуйте ниже:

1)Right on your project
2)Go to properties
3)Go to C/C++ Build
4)Go to Builder Settings
5)Go to Build Location
  Add build directory
6)Click on Workspace
7)Select your project folder

вы должны увидеть что-то вроде

${workspace_loc:/[Your Project_Name]}

Готово!!

Ответ 8

Это сработало для меня. Нет переменных среды и нет настроек. Перейдите в корневой каталог, в котором вы разархивировали ndk в командной строке и выполнили команду ndk-build:

ndk-build NDK_PROJECT_PATH = путь к вашему проекту

Образец будет выглядеть так на моей машине dev:

 C:\adt-bundle-windows-x86-20140321\android-ndk-r9d>ndk-build NDK_PROJECT_PATH=D: /workspace/naruto  
 Android NDK: WARNING: APP_PLATFORM android-19 is larger than android:minSdkVersi on 9 in D:/workspace/naruto/AndroidManifest.xml
 [armeabi] Compile thumb  : ndkfoo <= ndkfoo.c 
 [armeabi] SharedLibrary  : libndkfoo.so 
 [armeabi] Install        : libndkfoo.so => libs/armeabi/libndkfoo.so

Ответ 9

-C работал у меня.

введите описание изображения здесь

Вы также можете использовать терминал mac для этого.

Ответ 10

Вам нужно выполнить следующие шаги:

1.Перейдите в папку, содержащую Android.mk

2. Введите путь android-ndk к $NDK_PROJECT_PATH. например: export NDK_PROJECT_PATH =/home/android-ndk-r8b.

3. Добавить NDK в $PATH. например: export PATH = $PATH:/home/android-ndk-r8b.

Ответ 11

Установите рабочий каталог рабочего стола ndk, чтобы решить вашу проблему, так как я получил ту же проблему и решил ее таким образом.

Путь: Свойства проекта → Строители → - > Главная → Рабочий каталог