@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

Как исправить?
  • Вопрос задан
  • 2850 просмотров
Решения вопроса 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 например.
Ответ написан
Ваш ответ на вопрос

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

Похожие вопросы