Imagination PowerVR SDK Blog

Help setting up PVRTrace on Android

pvrtrace

#1

I appologize for asking a question that has been asked before, but tips from other threads did not solve my problems.  I am having a problem setting up PVRTrace on my Droid X, using the documentation here:

 

https://www.imgtec.com/powervr/insider/docs/PVRTrace.User%20Manual.1.23.2.3f.External.pdf

 

The only issue I had with the above instructions, was with step 3:

3. If 'pvrtrace.cfg' does not exist, generate one by running the application to be traced.

Running the application does not generate this file.  Instead, I created it manually, as follows:

 

[host]
EglLibraryPath = /system/lib/egl/libEGL_POWERVR_SGX530_125.so
Es1LibraryPath = /system/lib/egl/libGLESv1_CM_POWERVR_SGX530_125.so
Es2LibraryPath = /system/lib/egl/libGLESv2_POWERVR_SGX530_125.so

 

[record]
TraceFile = /mnt/sdcard/trace-%pid.pvrt
RecordData = 0
StartFrame = 0
EndFrame = 1

 

I've placed this pvrtrace.cfg file in both the root directory / and in the SD Card root /mnt/sdcard, and given it permission 666.  Additionally, my app has permission to write to the sdcard (which I've verified by generating test files from the code).

 

Everything else went as expected, following the guide I mentioned above.  I copied libPVRTrace.so to /system/lib as instructed in step 1, and libGLESv2_PVRTRACE.so to /system/lib/egl as instructed in step 2, and gave them permission 644.  I created a PVRTRACE version of egl.cfg in /system/lib/egl, as instructed in step 7, and gave it permission 644.  The only other issue I had was needing to remount /system and / in order to be able to write to them, since they are read-only by default (I suggest adding that to the documentation to save folks the trouble of having to look up how to do this).

 

However, replacing egl.cfg with the PVRTRACE version and running the app I want to trace has two critical problems:

 

1) The graphics for the app do not display.  Instead there is a thin white rectangle at the top of the screen.

2) The trace file is not generated.

 

Please let me know if you have any suggestions, or if you require additional information.
paulscode2012-02-24 03:25:27

#2

Hi paulscode,



Reading what the documentation tells us:

2. Copy: "libEGL_PVRTRACE.so", "libGLESv2_PVRTRACE.so" (OpenGL ES 2.0) or "libGLESv1_CM_PVRTRACE.so" (OpenGL ES 1.1).

Has you copied the

libEGL_PVRTRACE.so to /system/lib/egl?Â

I think that could be your problem.

One Tip: The record library for android use the logcat system to save all the message.

You can query the logcat for possible error using adb shell

  • adb logcat -c // Clean the log cat
  • Run the app
  • adb logcat -d

- OR -



  • adb shell
  • logcat -c
  • logcat -f output
  • Run the app
  • Ctrl+C
  • adb pull /path/output

Regards,

DGonzalez





[Edit: fixed quotes, Gordon]Gordon2012-02-24 11:19:40

#3

I'll try copying libEGL_PVRTRACE.so to /system/lib/egl, but the way I understand that sentence (assuming it is normal English grammar, and not pseudo computer logic), is "A XOR B XOR C", rather than "A AND (B XOR C)".  If this is the problem, then that guide needs to be updated, because I doubt I'm the only one who interpreted it that way.  I'll post an update shortly after I try it out.



--EDIT--
That worked brilliantly.  Thanks a million!!
paulscode2012-02-24 22:37:39