DBG doesn't work for Android


#1

I'm having some trouble getting DBG to work on Android.

Right now I'm running the JUCE demo app on a Samsung Galaxy Tab 2. I'm building it in Eclipse using the /Builds/Android folder created by the Introjucer. I'm on Mac OS X Mountain Lion and I'm using JUCE 3.0.3.

DBG doesn't seem to do anything. Upon loading the app, I don't get any sort of "JUCE 3.0.3" message in the console. I've also explicitly added DBG calls at various points in the JUCE Demo and nothing seems to fire - Eclipse's "console" stays empty.

I've tried to run it via Run -> Debug As -> Android Native Aplpication and still nothing. The demo itself runs fine, but it just seems like DBG doesn't route to the console.

How do I get this to work?

 

Thanks!


#2

I've no idea what eclipse does for its console - I've always used a terminal running logcat to see the messages.


#3

 

outputDebugString will go out to "adb -d logcat"

 

 


#4

LogCat gives me an overwhelming volley of messages. I've searched within that, but I don't see any of my messages from DBG appearing anywhere. Is there some kind of filter you use to see them? How do they appear? I've written a quick demo program that just spits out tons of DBG calls, and as far as I can tell, they aren't making it to LogCat at all.


#5

Upon further inspection, it looks like JUCE_DEBUG is set to false even though I'm trying to build it in Eclipse as a "Debug" build. Hence, DBG is just defined as a useless macro doing nothing. I tried inserting the following test code into my main.cpp

#if !JUCE_DEBUG
asdfasdfasdf
#endif

Here's what I get if I build it via Run -> Debug As -> Native Android Application:

 

**** Build of configuration Default for project testproject ****

/Users/dev/SDKs/android-ndk/ndk-build NDK_DEBUG=1 all 
[armeabi] Gdbserver      : [arm-linux-androideabi-4.6] libs/armeabi/gdbserver
[armeabi] Gdbsetup       : libs/armeabi/gdb.setup
[armeabi] Compile++ arm  : juce_jni <= Main.cpp
jni/../../../Source/Main/Main.cpp:15:1: error: 'asdfasdfasdf' does not name a type

make: *** [obj/local/armeabi/objs-debug/juce_jni/__/__/__/Source/Main/Main.o] Error 1

**** Build Finished ****

Does anyone have any idea what might be going on here?


#6

Anyone else getting this issue, you can simply define in your AppConfig.h:

// juce_core flags:

#ifndef    JUCE_FORCE_DEBUG
 #define JUCE_FORCE_DEBUG 1
#endif

I also set 


#ifndef    JUCE_DEBUG
 #define JUCE_DEBUG 1
#endif

For good measure in the user defineable bit, but its probably not necessary.