Question about build.xml


#1

Hello!  I am a beginner here so I have a quick question that I am sure someone can sneeze out...

When I set an Android target in the introjucer, it automatically creates my build.xml file in the Android build folder.  According to the magical NDK book that I have, if I want to compile, package and deploy from the command line, these are the steps that I would need to take:

(inside of Android build folder)

1.  run 'android update project -p {path}'

2.  ndk-build

3.  ant installd

4.  adb am start ...

So my question is regarding step 1.  This command will create a new Ant build file.  However, since the introjucer has already created it for me, I get an error stating that the file must be updated because the version tag could not be found.  The solution is to get rid of the introjucer's build.xml file and allow the update command to recreate it.  This will get rid of any customisations and will require manual update though.  Right now I am just running test apps so this doesn't really matter, but I need to write an auto bash script that will do everything for me.. which means that in the script, I will need to check and see if there is an existing build.xml file to remove...but this is a problem if the introjucer has customized that file in some way.  It seems to me that the only way around this is to remove the introjucer's build.xml file, create a new one and provide the update command with any specific parameters like a target... ?  Does this seem about right? 

 

Thanks!!

 


#2

No - you just need to go to the build folder and type "ant debug" or "ant release". No need to call any of the other NDK tools.


#3

Hey Jules, thanks for getting back to me.  So I am a little confused- and please excuse the stupid questions, I am new at this.  I was under the impression, that if you used ant release or debug, that you would be using the default compiler.  My end goal is to use a new Intel compiler so I thought that I had to use ndk-build and then tell it which toolchain to use and which compiler --> "APP_ABI=x86 NDK_TOOLCHAIN=x86-4.8"

Which..brings me to my next issue.  Again, I am sure you can sneeze out the answer.  As I mentioned, I want to use the new Intel compiler for Android.  And I have found that the compiler does not work with Android builds that the Introjucer has created.  I did a few experiments to see what would happen.  

1.  I pulled sample code from the Juce download (HelloWorld) and created a new Android target for it-- double checked the target api, paths, etc.  I built in the command line with ndk-build, and deployed from Eclipse, all good.  Built in command line using "ndk-build APP_ABI=x86 V=1 NDK_TOOLCHAIN=x86-4.8 NDK_APP.local.cleaned_binaries=true", tried to deploy from Eclipse, nothing-- I get a crash.

2. I pulled sample code included with the NDK that is included with the INDE environment and Intel compiler.  I did the same builds as in step 1 and both of them run and I don't get a crash.  

So my question is if this might be an issue on the compiler side, or with the android build that the introjucer is making?  I know the compiler is quite new, so I'm not really sure if anyone else has encountered this... 

Thanks!!


#4

Hi,

i also try to build for x86 with gcc or clang -> crash (F/libc (14093): Fatal signal 11 (SIGSEGV) at 0x07d0001d (code=1), thread 14093)).

Can it be that the pointer sizes are different on x86 and ARM android systems? (pointer_sized_uint)

If I "remove" the callback for deliverMessage in juce_android_Messaging.cpp:

bool MessageManager::postMessageToSystemQueue (MessageManager::MessageBase* const message)
{
    message->incReferenceCount();
    android.activity.callVoidMethod (JuceAppActivity.postMessage, (jlong) (pointer_sized_uint) message);
    return true;
}

JUCE_JNI_CALLBACK (JUCE_ANDROID_ACTIVITY_CLASSNAME, deliverMessage, void, (jobject activity, jlong value))
{

    return;
    JUCE_TRY
    {
        MessageManager::MessageBase* const message = (MessageManager::MessageBase*) (pointer_sized_uint) value;
        message->messageCallback();
        message->decReferenceCount();
    }
    JUCE_CATCH_EXCEPTION
}

Nothing does crash and the AsyncUpdate does no more work ;-)

Any idea?


#5

The pointer sizes may be different, but a jlong is 64-bits so should work on all platforms.

Disabling all message callbacks would obviously stop almost everything working, so doesn't really give any useful information about the cause of the problem. A stack trace would be helpful.


#6

I have printed the pointers:

//==============================================================================
#include <android/log.h>
bool MessageManager::postMessageToSystemQueue (MessageManager::MessageBase* const message)
{
    message->incReferenceCount();
    android.activity.callVoidMethod (JuceAppActivity.postMessage, (jlong) (pointer_sized_uint) message);
    __android_log_print(ANDROID_LOG_INFO, "1", "= %p\n", message);
    return true;
}

JUCE_JNI_CALLBACK (JUCE_ANDROID_ACTIVITY_CLASSNAME, deliverMessage, void, (jobject activity, jlong value))
{
    JUCE_TRY
    {
       MessageManager::MessageBase* const message = (MessageManager::MessageBase*) (pointer_sized_uint) value;
     __android_log_print(ANDROID_LOG_INFO, "2", " = %p\n", message);
        message->messageCallback();
        message->decReferenceCount();
    }
    JUCE_CATCH_EXCEPTION
}

CONSOLE OUTPUT: Note everything thats sended to java 0x7..., The first callback with 0x6...

D/dalvikvm( 5177): Added shared lib /data/app-lib/com.monoplugs-2/libjuce_jni.so 0x435205e0
I/1       ( 5177): = 0x798b1140
I/1       ( 5177): = 0x798b30f0
I/1       ( 5177): = 0x798b38b0
I/1       ( 5177): = 0x79bb69b0
I/1       ( 5177): = 0x79b23550
I/1       ( 5177): = 0x79b67900
I/1       ( 5177): = 0x79f2dc80
I/1       ( 5177): = 0x79f0af10
I/1       ( 5177): = 0x7a5f86b0
I/1       ( 5177): = 0x7a703a90
I/1       ( 5177): = 0x7a704300
I/1       ( 5177): = 0x7a60ede0
I/1       ( 5177): = 0x7a5fe6b0
I/1       ( 5177): = 0x79a39c70
I/1       ( 5177): = 0x7a600a50
I/1       ( 5177): = 0x7a6137f0
I/1       ( 5177): = 0x79a41ed0
I/1       ( 5177): = 0x7a614210
I/1       ( 5177): = 0x7a614760
I/1       ( 5177): = 0x7a614cb0
I/1       ( 5177): = 0x7a615270
I/1       ( 5177): = 0x7a615780
I/1       ( 5177): = 0x7a615cd0
I/1       ( 5177): = 0x7a616220
I/1       ( 5177): = 0x7a616770
I/1       ( 5177): = 0x7a616cc0
I/1       ( 5177): = 0x7a617210
I/1       ( 5177): = 0x79a41ca0
I/1       ( 5177): = 0x7a622d30
I/1       ( 5177): = 0x7a6233d0
I/1       ( 5177): = 0x7a6177d0
I/1       ( 5177): = 0x7a621130
I/1       ( 5177): = 0x7a6217a0
I/1       ( 5177): = 0x7a621e40
I/1       ( 5177): = 0x7a6219c0
I/1       ( 5177): = 0x7a622110
I/1       ( 5177): = 0x7a6229a0
I/1       ( 5177): = 0x7a666e40
I/1       ( 5177): = 0x7a6673a0
I/1       ( 5177): = 0x7a667900
I/1       ( 5177): = 0x7a667e70
I/1       ( 5177): = 0x7a6683e0
I/1       ( 5177): = 0x7a668950
I/1       ( 5177): = 0x7a15bd40
I/1       ( 5177): = 0x7a15c3e0
I/1       ( 5177): = 0x7a15ca80
I/1       ( 5177): = 0x7a694130
I/1       ( 5177): = 0x7a16fd20
I/1       ( 5177): = 0x7a16ff20
I/1       ( 5177): = 0x79af9a20
I/1       ( 5177): = 0x79afa0c0
I/1       ( 5177): = 0x79af9660
I/1       ( 5177): = 0x79ab69c0
I/1       ( 5177): = 0x79ab7060
I/1       ( 5177): = 0x79ab7700
I/1       ( 5177): = 0x79afa360
I/1       ( 5177): = 0x79ab7a30
I/1       ( 5177): = 0x7a6adc90
I/1       ( 5177): = 0x7a6ae1e0
I/1       ( 5177): = 0x79b201b0
I/1       ( 5177): = 0x7a1d4810
I/1       ( 5177): = 0x7a1ba5a0
I/1       ( 5177): = 0x7a58ded0
I/1       ( 5177): = 0x7a5aef60
I/1       ( 5177): = 0x7a5b0440
I/1       ( 5177): = 0x7a631290
I/1       ( 5177): = 0x7a5ad9a0
I/1       ( 5177): = 0x7a1d8a20
I/1       ( 5177): = 0x7a59c9c0
I/1       ( 5177): = 0x7a59dd00
I/1       ( 5177): = 0x7a59d990
I/1       ( 5177): = 0x7a59bc30
I/1       ( 5177): = 0x7a59c420
I/1       ( 5177): = 0x7a62ee50
I/1       ( 5177): = 0x7a62f4f0
I/1       ( 5177): = 0x79afce00
I/1       ( 5177): = 0x7a27d610
I/1       ( 5177): = 0x7a27dcb0
I/1       ( 5177): = 0x7a27e4a0
I/1       ( 5177): = 0x79a3e550
I/1       ( 5177): = 0x7a2bfc70
I/1       ( 5177): = 0x7a2c0310
I/1       ( 5177): = 0x7a2bff10
I/1       ( 5177): = 0x7a2c05f0
I/1       ( 5177): = 0x7a2bf7b0
I/1       ( 5177): = 0x7a2e50b0
I/1       ( 5177): = 0x7a2e5600
I/1       ( 5177): = 0x7a2e5b20
I/1       ( 5177): = 0x7a2e60a0
I/1       ( 5177): = 0x7a2e6600
I/1       ( 5177): = 0x7a2e6b20
I/1       ( 5177): = 0x7a1a2da0
I/1       ( 5177): = 0x7a5fa7a0
I/1       ( 5177): = 0x7a5fb0f0
I/1       ( 5177): = 0x7a5faa40
I/1       ( 5177): = 0x7a5fae50
I/1       ( 5177): = 0x7a5fa3b0
I/1       ( 5177): = 0x7a1e3f50
I/1       ( 5177): = 0x7a7e3f30
I/1       ( 5177): = 0x79ba1570
I/1       ( 5177): = 0x7a7e4620
I/1       ( 5177): = 0x7a7e48c0
I/1       ( 5177): = 0x7a7b8cd0
I/1       ( 5177): = 0x7a7b93a0
I/1       ( 5177): = 0x7a7b9a70
I/1       ( 5177): = 0x7a7b8960
I/1       ( 5177): = 0x7a7fd510
I/1       ( 5177): = 0x7a8f23d0
I/1       ( 5177): = 0x7a8f2a40
I/1       ( 5177): = 0x7a8f2ce0
I/1       ( 5177): = 0x7a6081c0
I/1       ( 5177): = 0x7a607a10
I/1       ( 5177): = 0x7a607890
I/1       ( 5177): = 0x7a6075e0
I/1       ( 5177): = 0x7a608340
I/1       ( 5177): = 0x7a608750
I/1       ( 5177): = 0x7a6068a0
I/1       ( 5177): = 0x7a606e00
I/1       ( 5177): = 0x7a607cb0
I/1       ( 5177): = 0x7a6071f0
I/1       ( 5177): = 0x7a6089f0
I/1       ( 5177): = 0x7a606210
I/1       ( 5177): = 0x7a9392e0
I/1       ( 5177): = 0x7a15e210
I/1       ( 5177): = 0x7a218330
I/1       ( 5177): = 0x7a1878c0
I/2       ( 5177):  = 0x6190001d
F/libc    ( 5177): Fatal signal 11 (SIGSEGV) at 0x6190001d (code=2), thread 5177 (com.monoplugs)

 


#7

OUTPUT

...
I/1       ( 9422): = 2042329552
...
I/2       ( 9422):  = 8758161316009476125

...

With this at the positions like before:

__android_log_print(ANDROID_LOG_INFO, "1", "= %lld", (pointer_sized_uint) message);
...
__android_log_print(ANDROID_LOG_INFO, "2", " = %lld", value);


#8

Try printing them as hex, it's probably just being sign-extended.


#9

That is pretty bizarre! Can't see anywhere in the chain where the value would be changed..


#10

Ok some more prints. I also have added ARM to compare:

*****************************
Functions:
__android_log_print(ANDROID_LOG_INFO, "1", "= %lld", (pointer_sized_uint) message);
__android_log_print(ANDROID_LOG_INFO, "2", " = %lld", (pointer_sized_uint) message);

X86 OUTPUT
I/1       (27838): = 2048233776
I/2       (27838):  = 8005778686485725213

ARM OUTPUT (Working!)
I/1       (20092): = 8768918935924899840
I/2       (20092):  = 2025376592
*****************************

Do you see the same? But this is out of my knowledge.

 

Hex out useful?

*****************************
HEX OUTPUT (%X) (X86 only)
D/dalvikvm(10203): Added shared lib /data/app-lib/com.monoplugs-1/libjuce_jni.so 0x4351c8e0
I/1       (10203): = 798B3D50
I/1       (10203): = 78B8C650
I/1       (10203): = 78B8CEA0
I/1       (10203): = 798B5BC0
I/1       (10203): = 79A707C0
I/1       (10203): = 79B23C50
I/1       (10203): = 7A50A870
I/1       (10203): = 741B59D0
I/1       (10203): = 7A6010E0
I/1       (10203): = 7A1FB050
I/1       (10203): = 7A1FB500
I/1       (10203): = 7A5F50B0
I/1       (10203): = 79A6B8A0
I/1       (10203): = 79A3ABB0
I/1       (10203): = 79A43040
I/1       (10203): = 7A613210
I/1       (10203): = 7A613760
I/1       (10203): = 7A613CB0
I/1       (10203): = 7A614200
I/1       (10203): = 7A614750
I/1       (10203): = 7A614CF0
I/1       (10203): = 7A6150D0
I/1       (10203): = 7A615B70
I/1       (10203): = 7A615BF0
I/1       (10203): = 7A6161A0
I/1       (10203): = 7A616770
I/1       (10203): = 7A616CC0
I/1       (10203): = 7A6220A0
I/1       (10203): = 7A6226C0
I/1       (10203): = 7A622D60
I/1       (10203): = 7A623400
I/1       (10203): = 7A623080
I/1       (10203): = 7A620F50
I/1       (10203): = 7A621770
I/1       (10203): = 7A621E10
I/1       (10203): = 7A617290
I/1       (10203): = 7A666450
I/1       (10203): = 7A666920
I/1       (10203): = 7A666E70
I/1       (10203): = 7A6673C0
I/1       (10203): = 7A667910
I/1       (10203): = 7A667E60
I/1       (10203): = 7A6683B0
I/1       (10203): = 7A16F790
I/1       (10203): = 7A16FF80
I/1       (10203): = 7A15C060
I/1       (10203): = 7A15C6D0
I/1       (10203): = 7A15CD70
I/1       (10203): = 7A15C9E0
I/1       (10203): = 7A15CA00
I/1       (10203): = 79AFC680
I/1       (10203): = 79AFD010
I/1       (10203): = 79AFC730
I/1       (10203): = 7A6AC0D0
I/1       (10203): = 7A6AC640
I/1       (10203): = 7A6ACAE0
I/1       (10203): = 7A6AD030
I/1       (10203): = 7A6AD580
I/1       (10203): = 7A6ADAD0
I/1       (10203): = 7A630590
I/1       (10203): = 79A95420
I/1       (10203): = 79A94BD0
I/1       (10203): = 79F78D60
I/1       (10203): = 7A630D30
I/1       (10203): = 7A5AD450
I/1       (10203): = 7A5AE940
I/1       (10203): = 7A59C320
I/1       (10203): = 7A518D30
I/1       (10203): = 7A59D820
I/1       (10203): = 7A5AFF90
I/1       (10203): = 7A59DE50
I/1       (10203): = 7A59BBD0
I/1       (10203): = 7A59B350
I/1       (10203): = 7A62EB80
I/1       (10203): = 7A62F220
I/1       (10203): = 7A1684E0
I/1       (10203): = 7A2BE770
I/1       (10203): = 7A2BED70
I/1       (10203): = 7A2BF410
I/1       (10203): = 7A2BEF90
I/1       (10203): = 7A27CBC0
I/1       (10203): = 7A27D260
I/1       (10203): = 7A27D900
I/1       (10203): = 7A27D480
I/1       (10203): = 7A27DBD0
I/1       (10203): = 7A2BF070
I/1       (10203): = 7A2E4030
I/1       (10203): = 7A2E4580
I/1       (10203): = 7A2E4AD0
I/1       (10203): = 7A2E5020
I/1       (10203): = 7A2E5570
I/1       (10203): = 79A93080
I/1       (10203): = 7A5F9EF0
I/1       (10203): = 7A5FA840
I/1       (10203): = 7A5FA190
I/1       (10203): = 7A5FA430
I/1       (10203): = 7A7E8BB0
I/1       (10203): = 7A7E9250
I/1       (10203): = 7A7E9920
I/1       (10203): = 7A5FAD80
I/1       (10203): = 7A7B93D0
I/1       (10203): = 7A7B9AA0
I/1       (10203): = 7A7BA170
I/1       (10203): = 7A7BA410
I/1       (10203): = 7A7B9CC0
I/1       (10203): = 7A809470
I/1       (10203): = 7A809820
I/1       (10203): = 7A8FE870
I/1       (10203): = 7A608530
I/1       (10203): = 7A607400
I/1       (10203): = 7A607280
I/1       (10203): = 7A606BE0
I/1       (10203): = 7A608140
I/1       (10203): = 7A605FF0
I/1       (10203): = 7A606290
I/1       (10203): = 7A6067F0
I/1       (10203): = 7A6076A0
I/1       (10203): = 7A8CFB50
I/1       (10203): = 7A607FF0
I/1       (10203): = 7A6083E0
I/1       (10203): = 7A949030
I/1       (10203): = 7A9495A0
I/1       (10203): = 7A949B10
I/1       (10203): = 7A683420
I/1       (10203): = 7A3CC620
I/1       (10203): = 7A187310
I/2       (10203):  = 7DC0001D
*****************************

*****************************
PTR OUTPUT (ARM) (First sended is first received)
D/dalvikvm(28345): Added shared lib /data/app-lib/com.monoplugs-1/libjuce_jni.so 0x4351b810
I/1       (28345): = 0x791f64e0
I/1       (28345): = 0x791f75a0
I/1       (28345): = 0x791f7d60
I/1       (28345): = 0x794fae40
I/1       (28345): = 0x7a14b080
I/1       (28345): = 0x7a05c2c0
I/1       (28345): = 0x7a050fb0
I/1       (28345): = 0x793b2810
I/1       (28345): = 0x7a02d560
I/1       (28345): = 0x7a3eb400
I/1       (28345): = 0x7a3ebbf0
I/1       (28345): = 0x7a070520
I/1       (28345): = 0x7a02d8d0
I/1       (28345): = 0x7a02d4e0
I/1       (28345): = 0x7a02de60
I/1       (28345): = 0x7a071f10
I/1       (28345): = 0x7a072400
I/1       (28345): = 0x7a072860
I/1       (28345): = 0x7a072e60
I/1       (28345): = 0x7a073430
I/1       (28345): = 0x7a0739d0
I/1       (28345): = 0x7a074310
I/1       (28345): = 0x7a073e30
I/1       (28345): = 0x7a0745b0
I/1       (28345): = 0x7a074f10
I/1       (28345): = 0x7a075430
I/1       (28345): = 0x7a075cb0
I/1       (28345): = 0x7a041ce0
I/1       (28345): = 0x7a042320
I/1       (28345): = 0x7a0429c0
I/1       (28345): = 0x7a042b10
I/1       (28345): = 0x7a0b57f0
I/1       (28345): = 0x7a0b5f00
I/1       (28345): = 0x7a0b6730
I/1       (28345): = 0x7a0b6160
I/1       (28345): = 0x7a0b6cd0
I/1       (28345): = 0x7a0b7220
I/1       (28345): = 0x7a0b7770
I/1       (28345): = 0x7a0b7cc0
I/1       (28345): = 0x7a0b8210
I/1       (28345): = 0x7a0b85f0
I/1       (28345): = 0x7a0b8c30
I/1       (28345): = 0x7a0b9200
I/1       (28345): = 0x7941ec00
I/1       (28345): = 0x79ab95e0
I/1       (28345): = 0x79ab9c80
I/1       (28345): = 0x7a0c4920
I/1       (28345): = 0x79ab9f20
I/1       (28345): = 0x79aa2ae0
I/1       (28345): = 0x7943fe20
I/1       (28345): = 0x79440410
I/1       (28345): = 0x79440ab0
I/1       (28345): = 0x79440630
I/1       (28345): = 0x79440d80
I/1       (28345): = 0x7a0fd550
I/1       (28345): = 0x7943fad0
I/1       (28345): = 0x7a0fd7d0
I/1       (28345): = 0x7a0fe3e0
I/1       (28345): = 0x7a0fe9b0
I/1       (28345): = 0x79a83810
I/1       (28345): = 0x798d4eb0
I/1       (28345): = 0x793d77d0
I/1       (28345): = 0x799d0eb0
I/1       (28345): = 0x794ce9f0
I/1       (28345): = 0x7938ef70
I/1       (28345): = 0x79fe0ab0
I/1       (28345): = 0x794ceaa0
I/1       (28345): = 0x7a069130
I/1       (28345): = 0x79fd0de0
I/1       (28345): = 0x79fd1480
I/1       (28345): = 0x79fd16a0
I/1       (28345): = 0x79b1eb60
I/1       (28345): = 0x79b1ee00
I/1       (28345): = 0x79fcf1e0
I/1       (28345): = 0x79fcf880
I/1       (28345): = 0x7a0e1ed0
I/1       (28345): = 0x79bebd00
I/1       (28345): = 0x79bec3a0
I/1       (28345): = 0x79beca40
I/1       (28345): = 0x79bec5c0
I/1       (28345): = 0x79bc2950
I/1       (28345): = 0x79bc2fc0
I/1       (28345): = 0x79bc3660
I/1       (28345): = 0x79bc3260
I/1       (28345): = 0x79bc3880
I/1       (28345): = 0x79c10960
I/1       (28345): = 0x79c10ec0
I/1       (28345): = 0x79c11420
I/1       (28345): = 0x79c11980
I/1       (28345): = 0x79c121e0
I/1       (28345): = 0x79c12850
I/1       (28345): = 0x7a1dcc90
I/1       (28345): = 0x73d36590
I/1       (28345): = 0x73d36d80
I/1       (28345): = 0x79b5b490
I/1       (28345): = 0x79b5bb30
I/1       (28345): = 0x79b5b730
I/1       (28345): = 0x793cae10
I/1       (28345): = 0x793cb3f0
I/1       (28345): = 0x793cbb20
I/1       (28345): = 0x7a208da0
I/1       (28345): = 0x7a209380
I/1       (28345): = 0x7a209960
I/1       (28345): = 0x793caaa0
I/1       (28345): = 0x7a1dda00
I/1       (28345): = 0x7a1de070
I/1       (28345): = 0x7a1de710
I/1       (28345): = 0x793f48a0
I/1       (28345): = 0x7a2edb60
I/1       (28345): = 0x7a037a00
I/1       (28345): = 0x7a039830
I/1       (28345): = 0x7a039980
I/1       (28345): = 0x7a039440
I/1       (28345): = 0x7a039c20
I/1       (28345): = 0x7a0371b0
I/1       (28345): = 0x7a034c00
I/1       (28345): = 0x7a035190
I/1       (28345): = 0x7a036c20
I/1       (28345): = 0x7a0346c0
I/1       (28345): = 0x7a036ad0
I/1       (28345): = 0x793840a0
I/1       (28345): = 0x7a338840
I/1       (28345): = 0x7a338dc0
I/1       (28345): = 0x7a3776b0
I/1       (28345): = 0x79aa9870
I/1       (28345): = 0x794fbb70
I/2       (28345):  = 0x791f64e0 (FIFO)

 

Do you still need the stack trace?


#11

X86 (message pointer print as int64)

I/1       ( 8902): = 2039209296
I/2       ( 8902):  = -1851785187


#12

Here is a working workaround - i store the pointer in an array and use the pointers instead the casted jlong's.

CriticalSection lock; // required for a release build
Array< MessageManager::MessageBase* > messages;
bool MessageManager::postMessageToSystemQueue (MessageManager::MessageBase* const message)
{
    const ScopedLock scopedLock (lock);

    message->incReferenceCount();
    messages.add( message );
    android.activity.callVoidMethod (JuceAppActivity.postMessage, 0);

    return true;
}

JUCE_JNI_CALLBACK (JUCE_ANDROID_ACTIVITY_CLASSNAME, deliverMessage, void, (jobject activity, jlong value))
{
    const ScopedLock scopedLock (lock);

    JUCE_TRY
    {

        // the size check should not necessary...
        if( messages.size() )
        {

            MessageManager::MessageBase* message = messages.remove(0);
            message->messageCallback();
            message->decReferenceCount();
        }
    }
    JUCE_CATCH_EXCEPTION
}

EDIT: Did anybody ever compiled for android x86 successful?

EDIT: add lock for release Build until the problem is solved


#13

Presumably this is a 64-bit machine, but the JUCE_64BIT isn't being picked up correctly, and pointer_sized_uint is therefore a 32-bit type?

Does it work if you change line 158 of juce_TargetPlatform.h to this?

  #if defined (__LP64__) || defined (_LP64) || defined (__arm64__)

#14

No, that fix does not work. Crashs. And it is a 32 bit machine.