LunarG / vktrace

Vulkan vktrace / vkreplay
Other
6 stars 8 forks source link

vktrace32 crashes #30

Open jt-v opened 6 years ago

jt-v commented 6 years ago

On Linux, "vktrace32 -p myapp -s all" launches the app but never creates a tracefile, doesn't generate screenshots, and never returns to the command prompt.

I found VkLayer_vktrace_layer.json has "library_path": "libVkLayer_vktrace_layer.so" but the library seems to be named libVkLayer_vktrace_layer32.so

I updated the json with libVkLayer_vktrace_layer32.so but now vktrace32 -p launches the app briefly, then crashes:

vktrace_lib_trace.cpp:266: void getMappedDirtyPagesLinux(): Assertion `readLen == 8 * nPages' failed. vktrace error: Child process crashed.

jt-v commented 6 years ago

Actually, other than vktrace, the vt libraries seem to be 64-bit, which isn't right:

$ file dbuild/layersvt/*.so | grep "ELF 64" | wc -l 5

I am setting these as per BUILD.md:

export ASFLAGS=--32 export CFLAGS=-m32 export CXXFLAGS=-m32 export PKG_CONFIG_LIBDIR=/usr/lib/i386-linux-gnu

and then building as per BUILDVT.md, i.e.:

./update_external_sources.sh cmake -H. -Bdbuild -DCMAKE_BUILD_TYPE=Debug cd dbuild make

davidlunarg commented 6 years ago

Yes, you are right. When attempting to build for 32-bit LInux, all *.o files in dbuild/layers/layersvt are 64 bit. VulkanTrace 32-bit builds for Linux has been a low priority. We'll keep this issue open and will work on it soon.