Как определить ссылку для сжатия и распаковки в Android.mk - PullRequest
0 голосов
/ 16 февраля 2012

Я пытаюсь скомпилировать программу на C под Android. Но я получаю «сжимать» «распаковывать» при связывании:

prebuilt/darwin-x86/toolchain/arm-eabi-4.4.3/bin/../lib/gcc/arm-eabi/4.4.3/../../../../arm-eabi/bin/ld: out/target/product/passion/obj/EXECUTABLES/androidvncserver_intermediates/LibVNCServer-0.9.7/libvncserver/rfbserver.o: in function rfbSendFileTransferChunk:external/android-vnc-server-read-only/LibVNCServer-0.9.7/libvncserver/rfbserver.c:1364: error: undefined reference to 'compress'
prebuilt/darwin-x86/toolchain/arm-eabi-4.4.3/bin/../lib/gcc/arm-eabi/4.4.3/../../../../arm-eabi/bin/ld: out/target/product/passion/obj/EXECUTABLES/androidvncserver_intermediates/LibVNCServer-0.9.7/libvncserver/rfbserver.o: in function rfbProcessFileTransfer:external/android-vnc-server-read-only/LibVNCServer-0.9.7/libvncserver/rfbserver.c:1626: error: undefined reference to 'uncompress'

Я уже добавил в Android.mk

LOCAL_SHARED_LIBRARIES := libz
LOCAL_SHARED_LIBRARIES := libjpeg

LOCAL_MODULE:= androidvncserver
LOCAL_MODULE_TAGS := optional

LOCAL_LDLIBS := -lz

Пожалуйста, дайте мне знать, что мне не хватает:

LOCAL_PATH:= $(call my-dir)
include $(CLEAR_VARS)

LOCAL_SRC_FILES:= \
    fbvncserver.c \
    LibVNCServer-0.9.7/libvncserver/main.c \
    LibVNCServer-0.9.7/libvncserver/rfbserver.c \
    LibVNCServer-0.9.7/libvncserver/rfbregion.c \
    LibVNCServer-0.9.7/libvncserver/auth.c \
    LibVNCServer-0.9.7/libvncserver/sockets.c \
    LibVNCServer-0.9.7/libvncserver/stats.c \
    LibVNCServer-0.9.7/libvncserver/corre.c \
    LibVNCServer-0.9.7/libvncserver/hextile.c \
    LibVNCServer-0.9.7/libvncserver/rre.c \
    LibVNCServer-0.9.7/libvncserver/translate.c \
    LibVNCServer-0.9.7/libvncserver/cutpaste.c \
    LibVNCServer-0.9.7/libvncserver/httpd.c \
    LibVNCServer-0.9.7/libvncserver/cursor.c \
    LibVNCServer-0.9.7/libvncserver/font.c \
    LibVNCServer-0.9.7/libvncserver/draw.c \
    LibVNCServer-0.9.7/libvncserver/selbox.c \
    LibVNCServer-0.9.7/libvncserver/d3des.c \
    LibVNCServer-0.9.7/libvncserver/vncauth.c \
    LibVNCServer-0.9.7/libvncserver/cargs.c \
    LibVNCServer-0.9.7/libvncserver/minilzo.c \
    LibVNCServer-0.9.7/libvncserver/ultra.c \
    LibVNCServer-0.9.7/libvncserver/scale.c \
    LibVNCServer-0.9.7/libvncserver/zlib.c \
    LibVNCServer-0.9.7/libvncserver/zrle.c \
    LibVNCServer-0.9.7/libvncserver/zrleoutstream.c \
    LibVNCServer-0.9.7/libvncserver/zrlepalettehelper.c \
    LibVNCServer-0.9.7/libvncserver/zywrletemplate.c \
    LibVNCServer-0.9.7/libvncserver/tight.c

LOCAL_C_INCLUDES := \
    $(LOCAL_PATH) \
    $(LOCAL_PATH)/LibVNCServer-0.9.7/libvncserver \
    $(LOCAL_PATH)/LibVNCServer-0.9.7 \
    external/zlib \
    external/jpeg

LOCAL_SHARED_LIBRARIES := libz
LOCAL_SHARED_LIBRARIES := libjpeg

LOCAL_MODULE:= androidvncserver
LOCAL_MODULE_TAGS := optional

LOCAL_LDLIBS := -lz
include $(BUILD_EXECUTABLE)

1 Ответ

0 голосов
/ 16 февраля 2012

Обычно я делаю так: попробуйте посмотреть на файл rfbserver.c до строки 1364. Попробуйте найти там «сжатие» и определение этой переменной (или макросов или чего-то подобного).Затем попробуйте найти определение этой переменной во включаемых файлах.Когда вы найдете их, включите этот файл в проект.

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