libstlport_static.a: такого файла нет: в доступе отказано - PullRequest
3 голосов
/ 18 ноября 2011

При компиляции моего проекта Android ndk я добавил

APP_STL := stlport_static

в мой файл jni / Application.mk, который позволяет использовать некоторые вещи STL.Однако, когда я очищаю и собираю, я получаю сообщение об ошибке libstlport_static.a: Нет такого файла: В доступе отказано. Я обнаружил, что решением этой проблемы является добавление

STLPORT_FORCE_REBUILD := true

Это исправление, но перестройка stlportБиблиотека каждый раз, очевидно, очень много времени.Есть ли лучшее решение этой проблемы?

Ответы [ 3 ]

11 голосов
/ 18 ноября 2011

Вы не сказали, на какой платформе вы разрабатываете, но я собираюсь догадаться, что это Windows.

Если вы используете Vista или Windows 7, проблема может быть связана с правами доступа к файлу libstlport_static.a. Либо проверьте права доступа к файлу, либо попробуйте полностью отключить контроль учетных записей.

Обратите внимание, что в NDK есть три версии libstlport_static.a. Вы должны быть в состоянии выяснить, какие приложения используются вашим приложением, обращаясь к настройке APP_ABI в файле Application.mk.

2 голосов
/ 16 сентября 2012

Я решил это, изменив права доступа к исходному файлу. В этом случае:

chmod 777 <ndk-dir>/sources/cxx-stl/stlport/libs/armeabi/libstlport_satic.a
1 голос
/ 25 апреля 2012

Если вы используете NDK r7c, другим способом (вместо отключения UAC) является вызов ndk-build в командной строке Windows (cmd) вместо bash под cygwin.

В NDK r7 и выше,ndk-build больше не зависит от cygwin, и поэтому его непосредственный вызов в cmd позволяет избежать проблемы с разрешениями, поскольку инструменты теперь имеют то же разрешение, что и вы.Обратите внимание, что вам все еще нужен Cygwin, если вы хотите отлаживать свой собственный код.

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