eclipse / mraa

Linux Library for low speed IO Communication in C with bindings for C++, Python, Node.js & Java. Supports generic io platforms, as well as Intel Edison, Intel Joule, Raspberry Pi and many more.

Home Page:http://mraa.io

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

How to build the android library for arm64 or aarch64 platform?

yishinhung opened this issue · comments

Hi
I modify the build-android.sh for x86 to arm64 by the following link. But get some error.
Could you have any idea to build the android mraa aar for arm64 platform?
Thank a lot!

  • build-android.sh for arm64:
    https://www.asuswebstorage.com/navigate/a/#/s/31AA6108FE9E4638A975ADAE5CE5BEE7Y
  • command : docker-compose run android
    [ 4%] Building C object src/CMakeFiles/mraa.dir/mraa.c.o
    In file included from /usr/src/app/src/mraa.c:18:
    In file included from /opt/android-ndk-r14b/platforms/android-24/arch-arm64/usr/include/stdlib.h:34:
    In file included from /opt/android-ndk-r14b/platforms/android-24/arch-arm64/usr/include/string.h:33:
    /opt/android-ndk-r14b/platforms/android-24/arch-arm64/usr/include/malloc.h:30:74: warning: unknown attribute 'alloc_size' ignored [-Wunknown-attributes]
    extern void* malloc(size_t byte_count) __mallocfunc __wur attribute((alloc_size(1)));
    ^
    /opt/android-ndk-r14b/platforms/android-24/arch-arm64/usr/include/malloc.h:31:92: warning: unknown attribute 'alloc_size' ignored [-Wunknown-attributes]
    extern void* calloc(size_t item_count, size_t item_size) __mallocfunc __wur attribute((alloc_size(1,2)));
    ^
    /opt/android-ndk-r14b/platforms/android-24/arch-arm64/usr/include/malloc.h:32:71: warning: unknown attribute 'alloc_size' ignored [-Wunknown-attributes]
    extern void* realloc(void* p, size_t byte_count) __wur attribute((alloc_size(2)));
    ^
    /opt/android-ndk-r14b/platforms/android-24/arch-arm64/usr/include/malloc.h:35:94: warning: unknown attribute 'alloc_size' ignored [-Wunknown-attributes]
    extern void* memalign(size_t alignment, size_t byte_count) __mallocfunc __wur attribute((alloc_size(2)));
    ^
    In file included from /usr/src/app/src/mraa.c:27:
    In file included from /opt/android-ndk-r14b/platforms/android-24/arch-arm64/usr/include/fcntl.h:37:
    In file included from /opt/android-ndk-r14b/platforms/android-24/arch-arm64/usr/include/unistd.h:34:
    In file included from /opt/android-ndk-r14b/platforms/android-24/arch-arm64/usr/include/sys/select.h:35:
    In file included from /opt/android-ndk-r14b/platforms/android-24/arch-arm64/usr/include/signal.h:37:
    /opt/android-ndk-r14b/platforms/android-24/arch-arm64/usr/include/asm/sigcontext.h:44:2: error: unknown type name '__uint128_t'
    __uint128_t vregs[32];
    ^
    4 warnings and 1 error generated.
    src/CMakeFiles/mraa.dir/build.make:62: recipe for target 'src/CMakeFiles/mraa.dir/mraa.c.o' failed
    make[2]: *** [src/CMakeFiles/mraa.dir/mraa.c.o] Error 1
    make[2]: Leaving directory '/usr/src/app/build'
    CMakeFiles/Makefile2:96: recipe for target 'src/CMakeFiles/mraa.dir/all' failed
    make[1]: *** [src/CMakeFiles/mraa.dir/all] Error 2
    make[1]: Leaving directory '/usr/src/app/build'
    Makefile:138: recipe for target 'all' failed
    make: *** [all] Error 2
    make: Leaving directory '/usr/src/app/build'