Ошибка Cocos2d-x при компиляции LOCAL_SRC_FILES указывает на отсутствующий файл (и папку) Windows

Добрый вечер.

Я застрял, пытаясь скомпилировать HelloWorld с помощью файла cocos2d-x. Я использовал следующие команды:

  • cocos compile -p android --android-studio
  • cocos compile -p android --android-studio
  • cocos compile -p android

И у меня всегда был один и тот же ответ

Android NDK: ERROR:C:\Users\santi_000\Desktop\Android\cocos2d\HelloWorld\proj.android\../cocos2d/external/freetype2/prebuilt/android/Android.mk:cocos_freetype2_static: LOCAL_SRC_FILES points to the missing file
Android NDK: Check que C:/Users/santi_000/Desktop/Android/cocos2d/HelloWorld/proj.android/../cocos2d/external/freetype2/prebuilt/android/arm64-v8a/libfreetype.a exists or que its path is correct
make: Entering directory `C: /Users/santi_000/Desktop/Android/cocos2d/HelloWorld/proj.android '
C: / Users / santi_000 / AppData / Local / Android / sdk / ndk-bundle / build //../ build / core / prebuilt-library.mk: 45: *** Android NDK: Aborting. Stop.
make: Leaving directory `C: /Users/santi_000/Desktop/Android/cocos2d/HelloWorld/proj.android '
Error running command, return code: 2.

Я нашел несколько страниц здесь, в StackOverFlow, однако ни одна из них мне не помогла. Я использую Windows. Я понял, что у меня даже нет папки arm64-V8A, что мне делать? Где я могу скопировать его или как я могу его сгенерировать?

Спасибо.


person Lovera    schedule 29.04.2016    source источник


Ответы (2)


Следующее сработало для меня

cocos compile --android-studio --target android-22 
    --ap android-22 --ndk-mode debug --ndk-toolchain arm-linux-androideabi-4.9 
    --platform android --app-abi armeabi --src C:\cocos2d-x\tests\cpp-tests

Вам нужно будет заменить --ndk-toolchain на правильный, который поставляется с вашей установкой NDK. Проверьте папку toolchains внутри NDK_ROOT.

Наиболее важным из них, который действительно заставил его работать, был --app-abi armeabi, поскольку именно он использовался в наборе инструментов.

[Изменить] Если вы на самом деле отметите cocos compile -h, вы увидите, что --app-abi упоминает armeabi как значение по умолчанию. Но это не тот случай. Он выбирает arm64 по умолчанию.

person Anand    schedule 10.06.2016
comment
Также изменение версии gradle в cocos2d-x\tests\cpp-tests\proj.android-studio\gradle\wrapper\gradle-wrapper.properties на 2.10 вместо 2.4 работало внутри Android Studio. - person Anand; 10.06.2016
comment
--app-abi armeabi работал на меня. Внутри cocos2d/external/freetype2/prebuilt/android есть каталог armeabi, но нет каталога arm64. - person dwks; 04.07.2016
comment
Благодарить. Ты. Пробовал часами. Войдите, чтобы проголосовать. - person Jimmy Bouker; 29.09.2016

Прежде всего, команды для компиляции проекта Android начинаются с cocos, а не coconuts.

компиляция кокосовых орехов -p android --android-studio

or

компиляция кокосовых орехов -p android

Теперь, для вышеуказанной ошибки, похоже, вы не установили путь NDK_HOME в переменной среды. Вы можете установить его вручную или перейти в папку библиотеки cocos2d-x из терминала и запустить

./setup.py

Он сделает все остальное.

person mohakagr    schedule 30.04.2016
comment
Он установил NDK_HOME, он использует каталог ndk-bundle из Android Studio (как вы можете видеть на пути). Я столкнулся с теми же ошибками в OSX. Похоже, что cocos2d-x не полностью совместим с последней версией NDK (также загружаемой вручную с developer.android.com/ndk/downloads/index.html не работал). Я видел это, потому что инструмент сборки искал RELEASE.TXT, который отсутствовал в обоих случаях. - person mars3142; 04.05.2016