Система сборки Android-NDK (сборка hello-gl2) - PullRequest
3 голосов
/ 18 января 2011

Я скачал и установил Android-NDK на свой Archlinux, используя этот пакет .

Не возникло проблем при сборке (и запуске) образца hello-jni, следуя инструкциям на эта страница , но если я пытаюсь сделать то же самое с hello-gl2, я получаю некоторые ошибки;похоже, что он не может найти некоторые заголовочные файлы:

$ ../../ndk-build 
/usr/bin/make -f /opt/android-ndk/build/core/build-local.mk
Compile++ thumb  : gl2jni <= gl_code.cpp
/opt/android-ndk/samples/hello-gl2/jni/gl_code.cpp:22:23: error: GLES2/gl2.h: No such file or directory
/opt/android-ndk/samples/hello-gl2/jni/gl_code.cpp:23:26: error: GLES2/gl2ext.h: No such file or directory
--- SNIP ---

GLES2/gl2.h и GLES2/gl2ext.h, тем не менее, присутствуют в $(NDK)/platforms/android-4/arch-arm/usr/include/, и, похоже, $(NDK)/build/core/setup-toolchain.mk должен задать такой путь включения.

Кто-нибудь сталкивался с такой же проблемой?Как я могу скомпилировать этот пример?
А потом, есть ли другие варианты для простой сборки приложений Android-NDK?Эта система сборки мне кажется довольно сложной, и я бы предпочел использовать cmake для сборки своих приложений.

Ответы [ 3 ]

6 голосов
/ 18 октября 2012

убедитесь, что APP_ABI и APP_PLATFORM определены в вашем Application.mk, а ваш APP_PLATFORM должен быть выше, чем android-5 ... проверка: gl.h & glext.h не найден

например, в Application.mk определите:

APP_ABI := armeabi #armeabi-v7a
APP_STL := stlport_static
APP_PLATFORM := android-8
2 голосов
/ 26 октября 2011

В моем случае отсутствовал файл default.properties с таким содержимым:

target=android-5

Поместите этот файл в корневой каталог проекта. Это может помочь.

0 голосов
/ 18 января 2011

Вам нужно использовать более высокий SDK.Уровень 5 является минимумом для сборки кода OpenGL ES 2.

...