如何在Android.mk中定义压缩和解压缩引用



我正在尝试在Android下编译一个C程序。但当链接时,我得到了"压缩"解压缩":

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)

我通常以以下方式进行操作:试着查看第1364行的rfbserver.c。试着在那里找到"压缩"和这个变量的定义(或者像这样的宏或smth)。然后尝试在include文件中查找此变量的定义。当您找到它们时,请将此文件包含到项目中。

最新更新