【BUG反馈】libcurl和openssl在android上不兼容

    此前一直使用的是2.0.4的cocos2dx,最近升级成2.1.2 出了不少问题。

   其中2.0.4使用的是android-ndk-r8 4.4.3 的 toolchain
   2.1.2 使用的是android-ndk-r83 4.6的toolchain
  1. openssl 1.0.1c 与 libcurl 的crypto包不兼容。

     我用的是openssl 1.0.1c 的源码,用NDK r8e编译成静态库使用的,导入NDK_MOUDLUE_PATH
     $(call import-module,cocos2dx/platform/third_party/android/prebuilt/libcrypto) \        $(call import-module,cocos2dx/platform/third_party/android/prebuilt/libssl) \
     
     用2.0.4的时候是正常的,升级成2.1.2的时候就报错。1000
    

不知道看的清不,主要就是这样的 多重定义
切换成2.0.4 prebuilt里面的libcurl, 编译通过,但是运行时联网闪退,由于是android 没有细查出错原因

  1. project clean 的时候会报错

日志如下
bash build_native.sh clean NDK_ROOT = /Users/tangshangle/Documents/android-ndk-r8eCOCOS2DX_ROOT = /Users/tangshangle/Documents/COCOS2D/cocos2d-2.1rc0-x-2.1.2/sjdz7/proj.android/…/…APP_ROOT = /Users/tangshangle/Documents/COCOS2D/cocos2d-2.1rc0-x-2.1.2/sjdz7/proj.android/…APP_ANDROID_ROOT = /Users/tangshangle/Documents/COCOS2D/cocos2d-2.1rc0-x-2.1.2/sjdz7/proj.androidUsing prebuilt externalsAndroid NDK: WARNING: Unsupported source file extensions in jni/Android.mk for module game_shared Android NDK: …/…/Classes/crc32.h …/…/Classes/deflate.h …/…/Classes/gzguts.h …/…/Classes/inffast.h …/…/Classes/inffixed.h …/…/Classes/inflate.h …/…/Classes/inftrees.h …/…/Classes/trees.h …/…/Classes/zconf.h …/…/Classes/zlib.h …/…/Classes/zutil.h make: Entering directory /Users/tangshangle/Documents/COCOS2D/cocos2d-2.1rc0-x-2.1.2/sjdz7/proj.android'Clean: box2d_static /bin/sh: -c: line 0: syntax error near unexpected token ('make: Leaving directory /Users/tangshangle/Documents/COCOS2D/cocos2d-2.1rc0-x-2.1.2/sjdz7/proj.android'/bin/sh: -c: line 0: rm -rf (TARGET_OBJS)'make: *** Error 2

不知道大家在使用中有什么情况没有,总之以上两点是我在使用中比较严重的情况,还有类似于 CCLabelTTF* 换行时字体位置错位,安装空间无缘无故变大等问题,由于不是那么重要,且很难分辨原因,也就不细谈了。发此贴的目的也是希望COCOS2D越来越好,这样我们开发者用的也放心。目前先用2.0.4等看看之后是否有需要 在升级

晕死,我使用的是2.2.3,openssl是openssl-0.9.8i
遇到了和LZ一样的问题
使用了一个粗暴的方法,对函数进行了重命名

在win32下运行是成功的
但是在android上,RSA生成密钥RSA_generate_key_ex错误,返回0
感觉没救了,有相关经验的人么? 挖坟罪过啊
花了一周时间搞openssl,不想就这样子弃坑啊 :6: