Hi everyone, Happy new year 2018.
I don’t know if it’s the right place to post this, but I’m looking for someone proficient with gcc and debug, to help our business with a development need. Mission offer is in the frame below. Feel free to come back with any question if interested. Have a nice day, Boris J. Laoviland Experience « Post-mortem » debug for Qt 5.10 / C++ under Windows (GCC 7.2 / Msys2) Working on a large and complex graphical creation software, we need to be able to target and resolve all the bugs/crashes that occurs at a remote client’s site. To achieve that goal, we are interested in the “post-mortem debug” approach, like described in this article : http://www.drdobbs.com/tools/postmortem-debugging/185300443 <http://www.drdobbs.com/tools/postmortem-debugging/185300443> To summarize, we are looking for: 1. A piece of C++11/14 code that we can put into our client software and which can: 1. Catch any unhandled exception, in any thread, anywhere in the program (whatever it’s a segmentation fault, a floating-point exception, an assert, or just a “throw 42;” uncatched line somewhere in the program) 2. In the handler for this exception, generate an exception log containing at least the addresses of the stack frames of the exception. Values of the local variables and some system info (RAM used, disk free, and so on) would be a plus. 3. Send it as a crash report to our cloud servers (we already have this code and it works, so no need to code the transfer; we just need the log file with precious info about the crash). 2. A C++11/14 program that can read/parse this crash report and match it with our source code, giving us for each stack frame level the exact C++ source line corresponding, if available (we understand that it’s only possible for our code, and not for the core Qt libraries, for instance). To make it simple, we want to get as close as possible to the power of debugging with GDB, but with an on-site client crash, where there’s no debugger and obviously no symbol or function name inside the compiled program (as we absolutely want to avoid reverse engineering). 3. Knowledge transfer. We don’t want only the code, we want to be able to understand it, well enough to dissect it, and adapt it on our other future projects. Note : This is nothing like a course, we already have a solid basis on C++, we just don’t know anything about core dumps and all the hard-level debug stuff, so a heavily commented or a page or two of explanation will be OK. Our constraints: * Platform: Windows 64-bits executable compiled with GCC (MinGW-w64, as packaged in the Msys2 project : http://www.msys2.org/ <http://www.msys2.org/> ) Portable code that could be easily ported under Linux and MacOS would be a great plus (this is the reason why we work with Qt). * Language / technology: Qt 5.10, over C++14. Standard C++11 and 98 Is also accepted. * Source code of our software and function names / symbols can’t be shipped in any form with the final client executable. * But we have to be able to get the exception stack with source files and lines. * Deadline and payment: to discuss. About us: Laoviland Experience S.A.S. based in Juvignac, France. busin...@laoviland.com <mailto:cont...@laoviland.com>