Android5.0下运行失败

直接新建一个com.test工程,quick 3.3final, 编译环境r9d, 编译的是project_with_no_anysdk. 编译成功,但是运行失败,log如下。另:在android 4.0版本运行成功。

dlopen("/data/app/com.test-1/lib/arm/libcocos2dlua.so", RTLD_LAZY) failed: dlopen failed: cannot locate symbol “MD5_Init” referenced by “libcocos2dlua.so”…

java.lang.UnsatisfiedLinkError: dlopen failed: cannot locate symbol “MD5_Init” referenced by “libcocos2dlua.so”…

另外,用以前的221rc,在android5.0上运行,audio加载mp3特别慢,不知道3.3final解决了吗?

md5.c这个文件没编?

编译的log 里面是是没搜到MD5相关的东西,
google了下,说android5.0移除了md5.c的编译

这是curl库的问题,不同平台的curl库有的包含MD5_Init这个函数,有的不包含;如果包含的话,编译时就要把md5.c加上,否则就要去掉。旧的系统设置好了,一升级又变了。这里你可以自己处理一下。

我自己加入md5.c 和 md5.h 这两个文件去编译,就报这样的问题。请求官方给个思路,如何搞。。

android-ndk-r9d/toolchains/arm-linux-androideabi-4.8/prebuilt/darwin-x86_64/lib/gcc/arm-linux-androideabi/4.8/…/…/…/…/arm-linux-androideabi/bin/ld: error: quick-3.3/external/curl/prebuilt/android/armeabi/libcrypto.a(md5_dgst.o): multiple definition of ‘MD5_Init’
android-ndk-r9d/toolchains/arm-linux-androideabi-4.8/prebuilt/darwin-x86_64/lib/gcc/arm-linux-androideabi/4.8/…/…/…/…/arm-linux-androideabi/bin/ld: ./obj/local/armeabi/objs-debug/cocos2dlua_shared/hellolua/md5.o: previous definition here

解决了吧?

我也碰到一模一样的问题啊,请问有解决办法么?

CC_USE_CURL := 1

我之前碰到这个问题是因为这个宏设置成了0,改成1,问题就没有了。希望对大家有用。

— Begin quote from ____

引用第7楼tangyafeng于2015-01-13 19:27发表的 :
CC_USE_CURL := 1

我之前碰到这个问题是因为这个宏设置成了0,改成1,问题就没有了。希望对大家有用。 http://www.cocoachina.com/bbs/job.php?action=topost&tid=281364&pid=1220738

— End quote

昨天我用这个方法是无效的,今天用就可以了。。不知道为什么,总之感谢七月大哥和tangyafeng了~

我又发现一个新的方法,首先把CC_USE_CURL=0,然后修改proj.android/Classes/quick-src/extra/Android.mk,在编译选项LOCAL_SRC_FILES := \增加一行这个

$(LOCAL_PATH)/crypto/md5/md5.c \

目前在我们的项目运行正常,因为md5.c其实已经编译到libcrypto.a里面,所以不能同时使用CC_USE_CURL和$(LOCAL_PATH)/crypto/md5/md5.c \

mark一下,感谢各位。

mark,后面可能会遇到了

请提供下md5.c 和md5.h 文件 邮箱337236137@qq.com 感激不尽

mark,后面可能会遇到了 :14::14::14::14:

MARK,兼容中。:14::14::14:

mark~ 有用的

最新的 7.43 已经把这个函数名字改了。。

MaRK MaRK MaRK

mark mark正好遇到相同的问题

mark~~~~~~
试试看行不行~~~~