Use libcurl at new cocos2dx 2.0.2 version

Hi Thanks for your hard works. :slight_smile: by the way, how can I use libcurl? I added

LOCAL_WHOLE_STATIC_LIBRARIES += cocos_curl_static
$(call import-module,libcurl)

at cocos2dx/Android.mk

but I got this error,

Android NDK: Trying to define local module ‘cocos_curl_static’ in …/libs/cocos2dx/platform/third_party/android/prebuilt/libcurl/Android.mk.
Android NDK: But this module was already defined by …/libs/cocos2dx/platform/third_party/android/prebuilt/libcurl/Android.mk.

Can you help me?

Hi,

I have exact the same issue when I upgrade my project to v2.0.3 :slight_smile: .

Have you resolved it?

Thanks in advance.

Fedor Shubin wrote:

Hi,
>
I have exact the same issue when I upgrade my project to v2.0.3 :slight_smile: .
>
Have you resolved it?
>
Thanks in advance.

Oh, I got it by myself. The same module is included both to cocos2dx/Android.mk and extensions/Android.mk.

Sorry for monolog :slight_smile: .

Could you please direct me to which part should i look into?
I got the same ‘module was already defined’ error,
but i’m not using libcurl, just the ‘hello world’ sample.
I’m clueless about which line is calling the android.mk file.
Thanks before.
This is the code inside build_native.sh i found: (if could be any help…)

APPNAME="cobaandroid"

# options

buildexternalsfromsource=

usage(){
cat << EOF
usage: $0 [options]

Build C/C++ code for $APPNAME using Android NDK

OPTIONS:
-s  Build externals from source
-h  this help
EOF
}

while getopts "sh" OPTION; do
case "$OPTION" in
s)
buildexternalsfromsource=1
;;
h)
usage
exit 0
;;
esac
done

# paths

if [ -z "${NDK_ROOT+aaa}" ];then
echo "please define NDK_ROOT"
exit 1
fi

DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"
# ... use paths relative to current directory
COCOS2DX_ROOT="$DIR/../.."
APP_ROOT="$DIR/.."
APP_ANDROID_ROOT="$DIR"

echo "NDK_ROOT = $NDK_ROOT"
echo "COCOS2DX_ROOT = $COCOS2DX_ROOT"
echo "APP_ROOT = $APP_ROOT"
echo "APP_ANDROID_ROOT = $APP_ANDROID_ROOT"

# make sure assets is exist
if [ -d "$APP_ANDROID_ROOT"/assets ]; then
    rm -rf "$APP_ANDROID_ROOT"/assets
fi

mkdir "$APP_ANDROID_ROOT"/assets

# copy resources
for file in "$APP_ROOT"/Resources/*
do
if [ -d "$file" ]; then
    cp -rf "$file" "$APP_ANDROID_ROOT"/assets
fi

if [ -f "$file" ]; then
    cp "$file" "$APP_ANDROID_ROOT"/assets
fi
done

# copy icons (if they exist)
file="$APP_ANDROID_ROOT"/assets/Icon-72.png
if [ -f "$file" ]; then
    cp "$file" "$APP_ANDROID_ROOT"/res/drawable-hdpi/icon.png
fi
file="$APP_ANDROID_ROOT"/assets/Icon-48.png
if [ -f "$file" ]; then
    cp "$file" "$APP_ANDROID_ROOT"/res/drawable-mdpi/icon.png
fi
file="$APP_ANDROID_ROOT"/assets/Icon-32.png
if [ -f "$file" ]; then
    cp "$file" "$APP_ANDROID_ROOT"/res/drawable-ldpi/icon.png
fi


if [[ "$buildexternalsfromsource" ]]; then
    echo "Building external dependencies from source"
    "$NDK_ROOT"/ndk-build -C "$APP_ANDROID_ROOT" $* \
        "NDK_MODULE_PATH=${COCOS2DX_ROOT}:${COCOS2DX_ROOT}/cocos2dx/platform/third_party/android/source"
else
    echo "Using prebuilt externals"
    "$NDK_ROOT"/ndk-build -C "$APP_ANDROID_ROOT" $* \
        "NDK_MODULE_PATH=${COCOS2DX_ROOT}:${COCOS2DX_ROOT}/cocos2dx/platform/third_party/android/prebuilt"
fi