MacOS Unable to build 3.15 for Android Studio (PosixThreadSupport)

Does anyone have any idea why i’m not able to build for android.

I’m runing :

MacOS Sierra 10.12.4
NDK : 15.0.3869609-beta1


cocos -v

Python 2.7.10
cocos2d-x-3.15
Cocos Console 2.3

I keep on getting the same result:


Executing tasks: [:Skryf:generateDebugSources, :Skryf:generateDebugAndroidTestSources, :Skryf:mockableAndroidJar, :Skryf:prepareDebugUnitTestDependencies, :Skryf:compileDebugSources, :Skryf:compileDebugAndroidTestSources, :Skryf:compileDebugUnitTestSources, :libcocos2dx:generateDebugSources, :libcocos2dx:generateDebugAndroidTestSources, :libcocos2dx:mockableAndroidJar, :libcocos2dx:prepareDebugUnitTestDependencies, :libcocos2dx:compileDebugSources, :libcocos2dx:compileDebugAndroidTestSources, :libcocos2dx:compileDebugUnitTestSources]

Configuration on demand is an incubating feature.
Incremental java compilation is an incubating feature.
:Skryf:preBuild UP-TO-DATE
:Skryf:preDebugBuild UP-TO-DATE
:Skryf:checkDebugManifest
:libcocos2dx:preBuild UP-TO-DATE
:libcocos2dx:preReleaseBuild UP-TO-DATE
:libcocos2dx:checkReleaseManifest
:libcocos2dx:prepareReleaseDependencies
:libcocos2dx:compileReleaseAidl UP-TO-DATE
:libcocos2dx:compileReleaseNdk UP-TO-DATE
:libcocos2dx:compileLint UP-TO-DATE
:libcocos2dx:copyReleaseLint UP-TO-DATE
:libcocos2dx:mergeReleaseShaders UP-TO-DATE
:libcocos2dx:compileReleaseShaders UP-TO-DATE
:libcocos2dx:generateReleaseAssets UP-TO-DATE
:libcocos2dx:mergeReleaseAssets UP-TO-DATE
:libcocos2dx:mergeReleaseProguardFiles UP-TO-DATE
:libcocos2dx:packageReleaseRenderscript UP-TO-DATE
:libcocos2dx:compileReleaseRenderscript UP-TO-DATE
:libcocos2dx:generateReleaseResValues UP-TO-DATE
:libcocos2dx:generateReleaseResources UP-TO-DATE
:libcocos2dx:packageReleaseResources UP-TO-DATE
:libcocos2dx:processReleaseManifest
:libcocos2dx:generateReleaseBuildConfig UP-TO-DATE
:libcocos2dx:processReleaseResources
:libcocos2dx:generateReleaseSources
:libcocos2dx:incrementalReleaseJavaCompilationSafeguard UP-TO-DATE
:libcocos2dx:javaPreCompileRelease
:libcocos2dx:compileReleaseJavaWithJavac UP-TO-DATE
:libcocos2dx:processReleaseJavaRes UP-TO-DATE
:libcocos2dx:transformResourcesWithMergeJavaResForRelease UP-TO-DATE
:libcocos2dx:transformClassesAndResourcesWithSyncLibJarsForRelease UP-TO-DATE
:libcocos2dx:mergeReleaseJniLibFolders UP-TO-DATE
:libcocos2dx:transformNativeLibsWithMergeJniLibsForRelease UP-TO-DATE
:libcocos2dx:transformNativeLibsWithStripDebugSymbolForRelease UP-TO-DATE
:libcocos2dx:transformNativeLibsWithSyncJniLibsForRelease UP-TO-DATE
:libcocos2dx:bundleRelease
:Skryf:prepareDebugDependencies
:Skryf:compileDebugAidl UP-TO-DATE
:Skryf:compileDebugRenderscript UP-TO-DATE
:Skryf:generateDebugBuildConfig UP-TO-DATE
:Skryf:generateDebugResValues UP-TO-DATE
:Skryf:generateDebugResources UP-TO-DATE
:Skryf:mergeDebugResources UP-TO-DATE
:Skryf:processDebugManifest
:Skryf:processDebugResources
:Skryf:generateDebugSources
:Skryf:preDebugAndroidTestBuild UP-TO-DATE
:Skryf:prepareDebugAndroidTestDependencies
:Skryf:compileDebugAndroidTestAidl UP-TO-DATE
:Skryf:processDebugAndroidTestManifest
:Skryf:compileDebugAndroidTestRenderscript UP-TO-DATE
:Skryf:generateDebugAndroidTestBuildConfig UP-TO-DATE
:Skryf:generateDebugAndroidTestResValues UP-TO-DATE
:Skryf:generateDebugAndroidTestResources UP-TO-DATE
:Skryf:mergeDebugAndroidTestResources UP-TO-DATE
:Skryf:processDebugAndroidTestResources
:Skryf:generateDebugAndroidTestSources
:Skryf:mockableAndroidJar UP-TO-DATE
:Skryf:preDebugUnitTestBuild UP-TO-DATE
:Skryf:prepareDebugUnitTestDependencies
:Skryf:incrementalDebugJavaCompilationSafeguard UP-TO-DATE
:Skryf:javaPreCompileDebug
:Skryf:compileDebugJavaWithJavac UP-TO-DATE
:Skryf:generateJsonModelDebug
:Skryf:externalNativeBuildDebug
Build MyGame armeabi
[armeabi] Compile++ arm : bullet_static <= PosixThreadSupport.cpp
[armeabi] Compile++ arm : bullet_static <= SpuContactResult.cpp
[armeabi] Compile++ arm : bullet_static <= SpuGatheringCollisionTask.cpp
[armeabi] Compile++ arm : bullet_static <= SpuMinkowskiPenetrationDepthSolver.cpp
/Users/fdeysel/Development/src/cocosTest/Skryf/cocos2d/external/bullet/BulletMultiThreaded/PosixThreadSupport.cpp: In destructor ‘virtual PosixBarrier::~PosixBarrier()’:
/Users/fdeysel/Development/src/cocosTest/Skryf/cocos2d/external/bullet/BulletMultiThreaded/PosixThreadSupport.cpp:305:34: error: ‘pthread_barrier_destroy’ was not declared in this scope
pthread_barrier_destroy(&m_barr);
^
/Users/fdeysel/Development/src/cocosTest/Skryf/cocos2d/external/bullet/BulletMultiThreaded/PosixThreadSupport.cpp: In member function ‘virtual void PosixBarrier::sync()’:
/Users/fdeysel/Development/src/cocosTest/Skryf/cocos2d/external/bullet/BulletMultiThreaded/PosixThreadSupport.cpp:310:40: error: ‘pthread_barrier_wait’ was not declared in this scope
int rc = pthread_barrier_wait(&m_barr);
^
/Users/fdeysel/Development/src/cocosTest/Skryf/cocos2d/external/bullet/BulletMultiThreaded/PosixThreadSupport.cpp: In member function ‘virtual void PosixBarrier::setMaxCount(int)’:
/Users/fdeysel/Development/src/cocosTest/Skryf/cocos2d/external/bullet/BulletMultiThreaded/PosixThreadSupport.cpp:319:62: error: ‘pthread_barrier_init’ was not declared in this scope
int result = pthread_barrier_init(&m_barr, NULL, numThreads);
^
make: *** [/Users/fdeysel/Development/src/cocosTest/Skryf/proj.android-studio/app/build/intermediates/ndkBuild/debug/obj/local/armeabi/objs-debug/bullet_static/BulletMultiThreaded/PosixThreadSupport.o] Error 1
make: *** Waiting for unfinished jobs…
:Skryf:externalNativeBuildDebug FAILED

FAILURE: Build failed with an exception.

  • What went wrong:
    Execution failed for task ‘:Skryf:externalNativeBuildDebug’.

Build command failed.
Error while executing process /Users/fdeysel/Development/android-sdk-macosx/ndk-bundle/ndk-build with arguments {NDK_PROJECT_PATH=null APP_BUILD_SCRIPT=/Users/fdeysel/Development/src/cocosTest/Skryf/proj.android-studio/app/jni/Android.mk NDK_APPLICATION_MK=/Users/fdeysel/Development/src/cocosTest/Skryf/proj.android-studio/app/jni/Application.mk APP_ABI=armeabi NDK_ALL_ABIS=armeabi NDK_DEBUG=1 APP_PLATFORM=android-19 NDK_OUT=/Users/fdeysel/Development/src/cocosTest/Skryf/proj.android-studio/app/build/intermediates/ndkBuild/debug/obj NDK_LIBS_OUT=/Users/fdeysel/Development/src/cocosTest/Skryf/proj.android-studio/app/build/intermediates/ndkBuild/debug/lib NDK_TOOLCHAIN_VERSION=4.9 APP_PLATFORM=android-15 NDK_MODULE_PATH=/Users/fdeysel/Development/src/cocosTest/Skryf/cocos2d:/Users/fdeysel/Development/src/cocosTest/Skryf/cocos2d/cocos:/Users/fdeysel/Development/src/cocosTest/Skryf/cocos2d/external -j4 NDK_DEBUG=1 /Users/fdeysel/Development/src/cocosTest/Skryf/proj.android-studio/app/build/intermediates/ndkBuild/debug/obj/local/armeabi/libMyGame.so}
[armeabi] Compile++ arm : bullet_static <= PosixThreadSupport.cpp
[armeabi] Compile++ arm : bullet_static <= SpuContactResult.cpp
[armeabi] Compile++ arm : bullet_static <= SpuGatheringCollisionTask.cpp
[armeabi] Compile++ arm : bullet_static <= SpuMinkowskiPenetrationDepthSolver.cpp
/Users/fdeysel/Development/src/cocosTest/Skryf/cocos2d/external/bullet/BulletMultiThreaded/PosixThreadSupport.cpp: In destructor ‘virtual PosixBarrier::~PosixBarrier()’:
/Users/fdeysel/Development/src/cocosTest/Skryf/cocos2d/external/bullet/BulletMultiThreaded/PosixThreadSupport.cpp:305:34: error: ‘pthread_barrier_destroy’ was not declared in this scope
pthread_barrier_destroy(&m_barr);
^
/Users/fdeysel/Development/src/cocosTest/Skryf/cocos2d/external/bullet/BulletMultiThreaded/PosixThreadSupport.cpp: In member function ‘virtual void PosixBarrier::sync()’:
/Users/fdeysel/Development/src/cocosTest/Skryf/cocos2d/external/bullet/BulletMultiThreaded/PosixThreadSupport.cpp:310:40: error: ‘pthread_barrier_wait’ was not declared in this scope
int rc = pthread_barrier_wait(&m_barr);
^
/Users/fdeysel/Development/src/cocosTest/Skryf/cocos2d/external/bullet/BulletMultiThreaded/PosixThreadSupport.cpp: In member function ‘virtual void PosixBarrier::setMaxCount(int)’:
/Users/fdeysel/Development/src/cocosTest/Skryf/cocos2d/external/bullet/BulletMultiThreaded/PosixThreadSupport.cpp:319:62: error: ‘pthread_barrier_init’ was not declared in this scope
int result = pthread_barrier_init(&m_barr, NULL, numThreads);
^
make: *** [/Users/fdeysel/Development/src/cocosTest/Skryf/proj.android-studio/app/build/intermediates/ndkBuild/debug/obj/local/armeabi/objs-debug/bullet_static/BulletMultiThreaded/PosixThreadSupport.o] Error 1
make: *** Waiting for unfinished jobs…

  • Try:
    Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output.

BUILD FAILED

Total time: 37.424 secs

Got it working. changed to android-ndk-r14b. seems to work.

Yes, this is the only solution right now. I also run into this issue with the lastest NDK build.

I’ve just updated to ndk 15 rc2 and everything compiles fine again.

Awesome. thank you