@wolf-9830

Как сделать андроид проект с дополнительной библиотекой SDL2_Image?

Дело в том, что у меня получилось сделать андроид проект с помощью SDL2 и Android SDK|NDK, но совершенно не получается сделать его с дополнительной библиотекой SDL2_Image.

Я прописал то что нужно в Android.mk и SDL_Activity.java, но терминал даёт такую ошибку:

good_inc@TERMINATOR:~/AndroidDevlopment/SDL_DEmo/jni$ '/home/good_inc/Doc/AndroidNDK/ndk-build' 
[armeabi] Install        : libSDL2.so => libs/armeabi/libSDL2.so
[armeabi] SharedLibrary  : libSDL2_image.so
/home/good_inc/Doc/AndroidNDK/toolchains/arm-linux-androideabi-4.6/prebuilt/linux-x86/bin/../lib/gcc/arm-linux-androideabi/4.6/../../../../arm-linux-androideabi/bin/ld: /home/good_inc/AndroidDevlopment/SDL_DEmo/obj/local/armeabi/objs/SDL2_image/IMG_webp.o: in function IMG_InitWEBP:/home/good_inc/AndroidDevlopment/SDL_DEmo/jni/SDL_Image/IMG_webp.c:123: error: undefined reference to 'WebPGetFeaturesInternal'
/home/good_inc/Doc/AndroidNDK/toolchains/arm-linux-androideabi-4.6/prebuilt/linux-x86/bin/../lib/gcc/arm-linux-androideabi/4.6/../../../../arm-linux-androideabi/bin/ld: /home/good_inc/AndroidDevlopment/SDL_DEmo/obj/local/armeabi/objs/SDL2_image/IMG_webp.o: in function IMG_InitWEBP:/home/good_inc/AndroidDevlopment/SDL_DEmo/jni/SDL_Image/IMG_webp.c:123: error: undefined reference to 'WebPDecodeRGBInto'
/home/good_inc/Doc/AndroidNDK/toolchains/arm-linux-androideabi-4.6/prebuilt/linux-x86/bin/../lib/gcc/arm-linux-androideabi/4.6/../../../../arm-linux-androideabi/bin/ld: /home/good_inc/AndroidDevlopment/SDL_DEmo/obj/local/armeabi/objs/SDL2_image/IMG_webp.o: in function IMG_InitWEBP:/home/good_inc/AndroidDevlopment/SDL_DEmo/jni/SDL_Image/IMG_webp.c:123: error: undefined reference to 'WebPDecodeRGBAInto'
collect2: ld returned 1 exit status
make: *** [/home/good_inc/AndroidDevlopment/SDL_DEmo/obj/local/armeabi/libSDL2_image.so] Error 1

Как исправить?
  • Вопрос задан
  • 2846 просмотров
Решения вопроса 1
Alexious_sh
@Alexious_sh
Если WebP не нужен, то проще всего изменить true на false в файле SDL2_image/Android.mk, в строке SUPPORT_WEBP := true

Если нужен, то либо скопировать папку SDL2_image/external/libwebp-0.3.0 в корень папки jni, либо мудрить с инклудом ее из корневого Android.mk. Я сталкивался с такой же проблемой в SDL2_audio, и так и не понял как его правильно заинклудить. Пришлось копировать.
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
GavriKos
@GavriKos
Не все зависимости подключены. Может либы, может исходники. На это указывает что нет некоторых функций, WebPDecodeRGBAInto например.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы