Search code examples
androidopen-sourceiotiotivitycbor

Iotivity scons build error(cbor)


This is my build environment

Ubuntu 14.04 LTS
Android NDK r10d
Android SDK API 21 SDK Platporm, build-tools 20

but, when I build scons TARGET_OS=android TARGET_ARCH=armeabi

they throw exception on building like

Archiving out/android/armeabi/release/resource/csdk/security/libocsrm.a
Indexing Archive out/android/armeabi/release/resource/csdk/security/libocsrm.a
Install file: "out/android/armeabi/release/resource/csdk/security/libocsrm.a" as "out/android/armeabi/release/libocsrm.a"
Linking out/android/armeabi/release/resource/csdk/liboctbstack.so
out/android/armeabi/release/resource/csdk/stack/src/ocpayloadparse.os:ocpayloadparse.c:function OCParseStringLL: error: undefined reference to '_cbor_value_dup_string'
out/android/armeabi/release/resource/csdk/stack/src/ocpayloadparse.os:ocpayloadparse.c:function OCParseSingleRepPayload: error: undefined reference to '_cbor_value_dup_string'
out/android/armeabi/release/resource/csdk/stack/src/ocpayloadparse.os:ocpayloadparse.c:function OCParseSingleRepPayload: error: undefined reference to '_cbor_value_dup_string'
out/android/armeabi/release/resource/csdk/stack/src/ocpayloadparse.os:ocpayloadparse.c:function OCParseSingleRepPayload: error: undefined reference to '_cbor_value_dup_string'
collect2: error: ld returned 1 exit status
scons: *** [out/android/armeabi/release/resource/csdk/liboctbstack.so] Error 1
scons: building terminated because of errors.

I don't know what to do, How can I resolve it?


Solution

  • Add one line in file tinycbor/SConscript

    cbor_src = [

    ...

    os.path.join(cborDir, 'src/cborparser_dup_string.c'), <- add this line