微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

为什么我遇到cygwin错误?

如何解决为什么我遇到cygwin错误?

|
static jboolean libinit(jnienv *env,jobject obj,jint sdk) {
/*
#include <sys/system_properties.h>
   int sdk;
   char c[PROP_VALUE_MAX];
if(__system_property_get(\"ro.build.version.sdk\",c) > 0) sscanf(c,\"%d\",&sdk);
else sdk = 8;
*/
     __android_log_print(ANDROID_LOG_INFO,\"liblossless\",\"libinit: sdk=%d\",sdk);
    if(!libhandle) {
        if(sdk < 8) libhandle = dlopen(\"/data/data/net.avs234/lib/libatrack8.so\",RTLD_Now);
        else libhandle = dlopen(\"/data/data/net.avs234/lib/libatrack9.so\",RTLD_Now);
    if(libhandle) {
        libmedia_pause = (typeof(libmedia_pause))     dlsym(libhandle,\"libmedia_pause\");
    libmedia_resume = (typeof(libmedia_resume)) dlsym(libhandle,\"libmedia_resume\");
    libmedia_start = (typeof(libmedia_start)) dlsym(libhandle,\"libmedia_start\");
    libmedia_stop = (typeof(libmedia_stop)) dlsym(libhandle,\"libmedia_stop\");
    libmedia_write = (typeof(libmedia_write)) dlsym(libhandle,\"libmedia_write\");
    libmediacb_start = (typeof(libmediacb_start)) dlsym(libhandle,\"libmediacb_start\");
    libmediacb_stop = (typeof(libmediacb_stop)) dlsym(libhandle,\"libmediacb_stop\");
        libmediacb_write = (typeof(libmediacb_write)) dlsym(libhandle,\"libmediacb_write\");
                libmediacb_wait_done = (typeof(libmediacb_wait_done))         dlsym(libhandle,\"libmediacb_wait_done\");
        }
    }
    __android_log_print(ANDROID_LOG_INFO,\"libinit: handle=%p\",libhandle);
    return libhandle != 0;
}

static jboolean libexit(jnienv *env,jobject obj) {
   int ret = 0;
     __android_log_print(ANDROID_LOG_INFO,\"libexit\");
    if(libhandle) {
        ret = dlclose(libhandle) ? 0 : 1;
        libhandle = 0;
    }
    return ret;
}
用cygwin编译会给我一个错误
    /cygdrive/C/androidndk4/apps/lossless/project/bin/ndk/local/armeabI/Objs/lossles
s / main.o:在函数
libexit\':
        /cygdrive/C/androidndk4/apps/lossless/project/jni/main.c:247: undefined referenc
e to
dlclose\中         / cygdrive / C / androidndk4 / apps / lossless / project / bin / ndk / local / armeabi / objs / lossles s / main.o:在功能“3ѭdlopen\”中         /cygdrive/C/androidndk4/apps/lossless/project/jni/main.c:228:未定义referenc e至
dlsym\'
        /cygdrive/C/androidndk4/apps/lossless/project/jni/main.c:229: undefined referenc
e to
dlsym\'         /cygdrive/C/androidndk4/apps/lossless/project/jni/main.c:230:未定义referenc e至
dlsym\'
        /cygdrive/C/androidndk4/apps/lossless/project/jni/main.c:231: undefined referenc
e to
dlsym\'         /cygdrive/C/androidndk4/apps/lossless/project/jni/main.c:232:未定义referenc e至
dlsym\'
        /cygdrive/C/androidndk4/apps/lossless/project/bin/ndk/local/armeabI/Objs/lossles
s/main.o:/cygdrive/C/androidndk4/apps/lossless/project/jni/main.c:233: more unde
fined references to
dlsym\',然后按照         / cygdrive / C / androidndk4 / apps / lossless / project / bin / ndk / local / armeabi / objs / lossles s / main.o:在功能
libinit\':
        /cygdrive/C/androidndk4/apps/lossless/project/jni/main.c:225: undefined referenc
e to
dlopen\中         collect2:ld返回1退出状态         制作:* [/ cygdrive / C / androidndk4 / apps / lossless / project / bin / ndk / local / armeabi / l iblossless.so]错误1     

解决方法

        您的错误是提到“未定义的引用”。这意味着未定义您正在使用的函数(dlopen,dlclose,dlsym等)。检查这些文件是否包含正确的头文件,如果这些函数来自共享库,请检查是否正确链接了所需的库。     

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。