пример JDK hello-jni - сбой ndk-build - PullRequest
4 голосов
/ 10 мая 2011

Я выполняю шаги на http://developer.android.com/sdk/ndk/overview.html для построения примера hello-jni, однако, когда я перехожу к шагу 2 для запуска

cd $NDK-ROOT/samples/hello-jni
$NDK-ROOT/ndk-build

в командной строке Cygwin, я получаюследующие сообщения об ошибках:

/bin/sh: -c: line 0: unexpected EOF while looking for matching `''
/bin/sh: -c: line 1: syntax error: unexpected end of file
Android NDK: Host awk tool is outdated. Please define HOST_AWK to point to Gawk
or Nawk !

У меня есть Cygwin 1.7.9, Gnu Make 3.8.2 и Gawk 3.1.8 на моем компьютере с Windows вместе с выпуском r5b Android NDK.Я также установил переменную среды HOST_AWK, которая указывает на мою папку Gawk.

К сожалению, образец не может успешно работать без этого шага (если я запускаю hello-jni, я немедленно получаю исключение UnsatisfiedLinkError).

Ниже приведен фрагмент файла init.mk на моем компьютере (находится в NDK_ROOT / build / core), который создает эту ошибку:

# Location of all awk scripts we use
BUILD_AWK := $(NDK_ROOT)/build/awk

AWK_TEST := $(shell $(HOST_AWK) -f $(BUILD_AWK)/check-awk.awk)
$(call ndk_log,Host awk test returned: $(AWK_TEST))
ifneq ($(AWK_TEST),Pass)
$(call __ndk_info,Host awk tool is outdated. Please define HOST_AWK to point to Gawk or     Nawk !)
$(call __ndk_error,Aborting.)
endif

Спасибо за помощь

Ответы [ 4 ]

0 голосов
/ 24 ноября 2011

ссылка https://stackoverflow.com/q/8121153/411522

моя теперь работала нормально. Что нужно сделать: просто переименуйте готовый awk в ndk

0 голосов
/ 17 мая 2011

Вместо HOST_AWK=gawk.exe, просто сделайте HOST_AWK=gawk

0 голосов
/ 06 июля 2011

Оказывается, в моем пути HOST_AWK был апостроф, который вызывал проблему.

0 голосов
/ 10 мая 2011

Попробуйте обновить инструмент awk.Кажется, устаревшая версия (возможно).Также убедитесь, что корень NDK определен в том месте, где находится ваш источник NDK, и убедитесь, что инструмент awk находится в каталоге сборки вашего источника NDK.

NDK_ROOT

Попробуйте установить эту переменную среды в том месте, где находится ваш корень NDK.Всякий раз, когда это определено (обычно вверху)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...