2016-06-24 8 views
0

Hallo suchen Hilfe auf statische Lib kompilieren für Android Core libbinder.libbinder statische kompilieren Fehler ndk11c api 21

hier ist mein Android.mk und Application.mk

sources := \ 
    AppOpsManager.cpp \ 
    Binder.cpp \ 
    BpBinder.cpp \ 
    BufferedTextOutput.cpp \ 
    Debug.cpp \ 
    IAppOpsCallback.cpp \ 
    IAppOpsService.cpp \ 
    IBatteryStats.cpp \ 
    IInterface.cpp \ 
    IMemory.cpp \ 
    IPCThreadState.cpp \ 
    IPermissionController.cpp \ 
    IProcessInfoService.cpp \ 
    IServiceManager.cpp \ 
    MemoryBase.cpp \ 
    MemoryDealer.cpp \ 
    MemoryHeapBase.cpp \ 
    Parcel.cpp \ 
    PermissionCache.cpp \ 
    PersistableBundle.cpp \ 
    ProcessInfoService.cpp \ 
    ProcessState.cpp \ 
    Static.cpp \ 
    Status.cpp \ 
    TextOutput.cpp 

LOCAL_PATH:= $(call my-dir) 

include $(CLEAR_VARS) 
LOCAL_MODULE := libbinder 
LOCAL_SRC_FILES := $(sources) 
LOCAL_STATIC_LIBRARIES := libbase libutils libcutils 
LOCAL_EXPORT_STATIC_LIBRARY_HEADERS := libbase libutils libcutils libbinder 
#LOCAL_CPPFLAGS := -DBINDER_IPC_32BIT=1 
#LOCAL_CPPFLAGS += -Werror 
LOCAL_CFLAGS += -DHAVE_SYS_UIO_H -DHAVE_PTHREADS 
LOCAL_CPPFLAGS += -D__GXX_EXPERIMENTAL_CXX0X__ -DHAVE_SYS_UIO_H -DHAVE_PTHREADS -std=gnu++11 
#LOCAL_CPPFLAGS += -std=c++11 
#LOCAL_CPPFLAGS += -frtti -fexceptions 
include $(BUILD_STATIC_LIBRARY) 


APP_MODULES := libbinder 
APP_ABI := armeabi 
APP_PLATFORM := android-21 
APP_STL := gnustl_static 
#NDK_TOOLCHAIN_VERSION = 4.8 

hier Thema ist ..

[armeabi] Clean   : binder [armeabi] 
[armeabi] Clean   : gnustl_shared [armeabi] 
[armeabi] Clean   : gnustl_static [armeabi] 
[armeabi] Compile++ thumb: binder <= AppOpsManager.cpp 
[armeabi] Compile++ thumb: binder <= Binder.cpp 
[armeabi] Compile++ thumb: binder <= BpBinder.cpp 
[armeabi] Compile++ thumb: binder <= BufferedTextOutput.cpp 
[armeabi] Compile++ thumb: binder <= Debug.cpp 
[armeabi] Compile++ thumb: binder <= IAppOpsCallback.cpp 
[armeabi] Compile++ thumb: binder <= IAppOpsService.cpp 
[armeabi] Compile++ thumb: binder <= IBatteryStats.cpp 
[armeabi] Compile++ thumb: binder <= IInterface.cpp 
[armeabi] Compile++ thumb: binder <= IMemory.cpp 
[armeabi] Compile++ thumb: binder <= IPCThreadState.cpp 
[armeabi] Compile++ thumb: binder <= IPermissionController.cpp 
[armeabi] Compile++ thumb: binder <= IProcessInfoService.cpp 
[armeabi] Compile++ thumb: binder <= IServiceManager.cpp 
[armeabi] Compile++ thumb: binder <= MemoryBase.cpp 
[armeabi] Compile++ thumb: binder <= MemoryDealer.cpp 
[armeabi] Compile++ thumb: binder <= MemoryHeapBase.cpp 
In file included from /home/adminuser/android-ndk-r11c/platforms/android-21/arch-arm/usr/include/cutils/atomic.h:22:0, 
       from jni/MemoryHeapBase.cpp:30: 
/home/adminuser/android-ndk-r11c/sources/cxx-stl/gnu-libstdc++/4.9/include/atomic:816:5: error: 'std::__atomic_is_lock_free' declared as an 'inline' variable 
    atomic_is_lock_free(const atomic<_ITp>* __a) noexcept 
    ^
/home/adminuser/android-ndk-r11c/sources/cxx-stl/gnu-libstdc++/4.9/include/atomic:816:5: error: template declaration of 'bool std::__atomic_is_lock_free' 
/home/adminuser/android-ndk-r11c/sources/cxx-stl/gnu-libstdc++/4.9/include/atomic:816:5: error: expected primary-expression before 'const' 
    atomic_is_lock_free(const atomic<_ITp>* __a) noexcept 
    ^
/home/adminuser/android-ndk-r11c/sources/cxx-stl/gnu-libstdc++/4.9/include/atomic:816:5: error: expected ')' before 'const' 
In file included from /home/adminuser/android-ndk-r11c/platforms/android-21/arch-arm/usr/include/utils/RefBase.h:20:0, 
       from /home/adminuser/android-ndk-r11c/platforms/android-21/arch-arm/usr/include/binder/IMemory.h:24, 
       from /home/adminuser/android-ndk-r11c/platforms/android-21/arch-arm/usr/include/binder/MemoryHeapBase.h:23, 
       from jni/MemoryHeapBase.cpp:32: 
/home/adminuser/android-ndk-r11c/sources/cxx-stl/gnu-libstdc++/4.9/include/atomic:819:3: error: expected ')' before 'template' 
    template<typename _ITp> 
^
In file included from /home/adminuser/android-ndk-r11c/platforms/android-21/arch-arm/usr/include/cutils/atomic.h:22:0, 
       from jni/MemoryHeapBase.cpp:30: 
/home/adminuser/android-ndk-r11c/sources/cxx-stl/gnu-libstdc++/4.9/include/atomic:830:5: error: expected unqualified-id before 'void' 
    atomic_init(volatile atomic<_ITp>* __a, _ITp __i) noexcept; 
    ^
/home/adminuser/android-ndk-r11c/sources/cxx-stl/gnu-libstdc++/4.9/include/atomic:830:5: error: expected ')' before 'void' 
/home/adminuser/android-ndk-r11c/sources/cxx-stl/gnu-libstdc++/4.9/include/atomic:830:5: error: expected ')' before 'void' 
/home/adminuser/android-ndk-r11c/sources/cxx-stl/gnu-libstdc++/4.9/include/atomic:834:5: error: variable or field '__atomic_store_n' declared void 
    atomic_store_explicit(atomic<_ITp>* __a, _ITp __i, 
    ^
/home/adminuser/android-ndk-r11c/sources/cxx-stl/gnu-libstdc++/4.9/include/atomic:834:5: error: expected primary-expression before '*' token 
    atomic_store_explicit(atomic<_ITp>* __a, _ITp __i, 
    ^
/home/adminuser/android-ndk-r11c/sources/cxx-stl/gnu-libstdc++/4.9/include/atomic:834:5: error: '__a' was not declared in this scope 
    atomic_store_explicit(atomic<_ITp>* __a, _ITp __i, 
    ^
/home/adminuser/android-ndk-r11c/sources/cxx-stl/gnu-libstdc++/4.9/include/atomic:834:5: error: expected primary-expression before '__i' 
    atomic_store_explicit(atomic<_ITp>* __a, _ITp __i, 
    ^
/home/adminuser/android-ndk-r11c/sources/cxx-stl/gnu-libstdc++/4.9/include/atomic:834:5: error: expected primary-expression before '__m' 
    atomic_store_explicit(atomic<_ITp>* __a, _ITp __i, 
    ^
/home/adminuser/android-ndk-r11c/sources/cxx-stl/gnu-libstdc++/4.9/include/atomic:840:5: error: variable or field '__atomic_store_n' declared void 
    atomic_store_explicit(volatile atomic<_ITp>* __a, _ITp __i, 
    ^
/home/adminuser/android-ndk-r11c/sources/cxx-stl/gnu-libstdc++/4.9/include/atomic:840:5: error: expected primary-expression before 'volatile' 
    atomic_store_explicit(volatile atomic<_ITp>* __a, _ITp __i, 
    ^
/home/adminuser/android-ndk-r11c/sources/cxx-stl/gnu-libstdc++/4.9/include/atomic:840:5: error: expected ')' before 'volatile' 
make: *** [obj/local/armeabi/objs/binder/MemoryHeapBase.o] Error 1 

Quelle Download. https://android.googlesource.com/platform/frameworks/native/+/master/libs/

ich habe Headers in Android-NDK-R11c/platforms/android-21/Bogen-Bogen/usr/include/ cutils utils Bindemittel und andere, die Notwendigkeit war. ich benutze VMWARE cent os 7.x mit android ndk 11c ..

Irgendwelche Tipps?

Antwort

0

Nicht sicher der genaue Fehler dort, aber es scheint ein Header-Konflikt.

Workaroud: nur #include <atomic> ausdrücklich vor #include <stdatomic.h> (oder wer recersively es enthalten)

Verwandte Themen