<div dir="ltr"><div>So viewer.exe is 32.bit, but java is 64-bit, and you want to trace the java process.<br></div><div><div><br></div><div>apitrace can follow child processes on Windows, but no if they differ in 32-bits vs 64bits.  It's not impossible to fix, but it would require the cooperation of both 32 and 64 bits apitrace binaries which is something that hasn't been implemented.<br><br></div><div>There are two things you could try:<br><br></div><div>- copy the wrapper opengl32.dll from the 64-bits binaries, temporarily place in the directory where java.exe is (or your program's other DLLs), run the program normally (through viewer.exe, not using `apitrace trace`), then remove the wrapper opengl32.dll when done. This might remote<br><br></div><div class="gmail_extra">- use procexp to discover the Java classpath and arguments, then run `apitrace trace java ...` directly, with 64-bit binaries, hence bypassing viewer.exe<br><br>Jose<br><br><div class="gmail_quote">On Sun, Oct 12, 2014 at 3:26 AM,  <span dir="ltr"><<a href="mailto:io.github.apitrace@io7m.com" target="_blank">io.github.apitrace@io7m.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Hi.<br>
<br>
I'm trying to debug an OpenGL program written in Java. The program<br>
comes with a tiny frontend executable that simply sets up the Java<br>
classpath and forks a JVM to run the program. The executable was<br>
produced with launch4j (<a href="http://launch4j.sourceforge.net" target="_blank">http://launch4j.sourceforge.net</a>).<br>
<br>
I'm using the latest apitrace binaries available on the site<br>
(<a href="http://people.freedesktop.org/~jrfonseca/apitrace/apitrace-msvc-latest.7z" target="_blank">http://people.freedesktop.org/~jrfonseca/apitrace/apitrace-msvc-latest.7z</a>).<br>
<br>
I get the following error when trying to trace the program:<br>
<br>
  > apitrace trace --verbose viewer.exe<br>
  info: did not find C:\Users\testing\Desktop\apitrace-msvc\x86\bin\..\wrappers\RelWithDebInfo\opengl32.dll<br>
  info: found C:\Users\testing\Desktop\apitrace-msvc\x86\bin\..\wrappers\opengl32.dll<br>
  inject: C:\Users\testing\Desktop\apitrace-msvc\x86\bin\..\wrappers\opengl32.dll viewer.exe<br>
  error: failed to execute viewer.exe (2)<br>
<br>
I've tried the x64 version but receive the same error.<br>
<br>
Any idea how I can get some better error reporting out of it?<br>
<br>
Some info that may be relevant: The system's JVM is a 64-bit executable:<br>
<br>
  > java -version<br>
  java version "1.8.0_20"<br>
  Java(TM) SE Runtime Environment (build 1.8.0_20-b26)<br>
  Java HotSpot(TM) 64-Bit Server VM (build 25.20-b23, mixed mode)<br>
<br>
... but I believe viewer.exe may be 32-bit. Could this have any effect<br>
on apitrace?<br>
<br>
M<br>
_______________________________________________<br>
apitrace mailing list<br>
<a href="mailto:apitrace@lists.freedesktop.org">apitrace@lists.freedesktop.org</a><br>
<a href="http://lists.freedesktop.org/mailman/listinfo/apitrace" target="_blank">http://lists.freedesktop.org/mailman/listinfo/apitrace</a><br>
</blockquote></div><br></div></div></div>