<html><head></head><body><div class="ydp8d4b43deyahoo-style-wrap" style="font-family: Helvetica Neue, Helvetica, Arial, sans-serif; font-size: 13px;"><div><div class="ydp7c394d8dpasted-link"><div>Hi !</div><div><br></div><div>I've managed to compile libunwind on Visual Studio 2017 with linux subsystem, </div><div>made my own fork from libunwind here: https://github.com/tapika/libunwind</div><div><br></div><div>For now I have "hardcoded" into git some of autogenerated files, just not to play around</div><div>with bash / shell / tools.</div><div><br></div><div>Can push my solution / project to your git if necessary, but I think Visual studio is still bit immature</div><div>what concerns linux, but debugging & compilation seems to work on some level.</div><div><br></div><div>Would it be possible to permanently rename "aux" folder, as it's name of windows device drive, and</div><div>you just cannot do checkout on windows, no matter which tool you use.</div><div><br></div><div>At the moment I want to recombine windows stack walking with linux stack walking, </div><div>something similar seems to be implemented in </div><div>https://github.com/Magnusnorrby/MolyRift/blob/master/Kernel/OVR_DebugHelp.cpp</div><div><br></div><div>I'll probably try to recombine or create something similar. Need to analyze bit deeper</div><div>how can do it.</div><div><br></div><div>I've also tried to rip off dbghelp.dll from wine linux emulator, </div><div>conversation on this can be found here:</div><div><br></div><div>http://wine.1045685.n8.nabble.com/dbghelp-detached-from-wine-into-standalone-windows-dll-td6007932.html</div><div><br></div><div>Basically at the moment what concerns stack walking - I see couple of alternatives</div><div><br></div><div>1. make something similar to OVR_DebugHelp.cpp, so API would be coombination of all 3 stack walk apis.</div><div><br></div><div>2. create new platform support under libunwind library, but need to analyze this alternative deeper</div><div>if it's feasible. (use libunwind API, but provide windows API implementation for that one).</div><div><br></div><div>3. create fully platform independent solution, like rip off dbghelp wired to multiple platforms.</div><div>(Separate library from libunwind)</div><div><br></div><div>I'm thinking about 2,1,3 with focus on 3 when possible (fully platform / os neutral), </div><div>but priority order as specified.</div><div><br></div><div>But despite of call stack approaches - I would like to discuss if anyone can comment</div><div>of idea of having c++ compiled dll / so so that it would be platform neutral ?</div><div><br></div><div>Original question resides in here:</div><div><br></div><div>https://www.reddit.com/r/cpp/comments/bjgt0j/make_portable_dll_without_second_compilation/</div><div><br></div></div>Does libunwind provides only parsing capabilities over dwarf / elf, would it be possible to modify dwarf file format to have </div><div>so / dll file format to be fully OS / platform neutral ?</div><div><br></div><div><br></div><div class="ydp8d4b43designature">--    Have a nice day!<div>     Tarmo.</div></div></div></body></html>