Не могу использовать ndk-build на Cygwin - PullRequest
4 голосов
/ 25 января 2011

Я должен использовать NDK для клиентского проекта.Я использую Windows 7.

Я следовал инструкциям по установке.Я установил Cygwin 1.7.1.

В Cygwin bash я захожу в корневой каталог android NDK.

Когда я вижу содержимое каталога, с помощью команды usin $ dir вижувсе содержимое, включая ndk-build, но когда я пытаюсь использовать ndk-build, я получаю следующий результат:

$ ndk-build bash: ndk-build: команда не найдена.

Не уверен, что я делаю не так.

1 Ответ

17 голосов
/ 26 января 2011

Cygwin эмулирует среду GNU / Linux на вашем компьютере с Windows.Это означает, что вы работаете с «оболочкой», которая не совпадает с командной строкой Windows.

Если вы введете asdf.exe в командной строке Windows, она попытается найти asdf.exeв текущем каталоге.Если он может найти его, файл выполняется.Если он не может его найти, он пройдет через все каталоги вашего %PATH% и попробует еще раз.

Однако, если вы наберете asdf в вашем bash (есть несколько видов оболочек,Bourne Again SHell - один из них), он не присматривает за ним в текущем каталоге.Вместо этого он попытается найти его в одном из ваших PATH каталогов.Здесь я не могу дать никаких источников, но AFAIK это по соображениям безопасности.Если вы хотите запустить файл, которого нет в вашем PATH, вы должны добавить к нему абсолютный относительный путь.Вы можете использовать ./, он указывает на текущий каталог.

Вот почему вам нужно набрать ./ndk-build, потому что он находится в текущем каталоге, а не в вашем пути.Нечто подобное /path/to/ndk/ndk-build также будет работать, но вам придется набрать немного больше:).

(На самом деле это еще сложнее, если вы хотите выполнить файл, вам нужны разрешения на его выполнение. Googleпоможет вам, если у вас возникнут проблемы с этим.)

...