[KDE/Mac] Review Request 120510: [OS X] make debugger build (and functional = in progress)

René J.V. Bertin rjvbertin at gmail.com
Wed Oct 8 22:03:12 UTC 2014


-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://git.reviewboard.kde.org/r/120510/
-----------------------------------------------------------

(Updated Oct. 9, 2014, 12:03 a.m.)


Review request for KDE Software on Mac OS X and KDevelop.


Changes
-------

gdb does not respond to a SIGINT on OS X, so the SIGINT is sent to the debugged application instead. To this end the `GDB` class gains a `childPid_` member variable, and `GDB::processLine` is extended to retrieve the pid value returned by the gdb slave's `result.reason == "thread-group-started"` line.


Repository: kdevelop


Description
-------

The conditions are united under OS X / Macports to build kdevelop's debugger component: the changes to the CMake files take this into account.

Getting the debugger to function is a work still in progress for which I hope to get feedback/guidance via this RR.
I have made the required changes in stty.cpp to obtain a pty with r/w permissions - on OS X this is done in a way that shares most code with the SGI code. In order not to duplicate more code than necessary I changed the logic of `ptyfd`'s initial value slightly, allowing to distinguish between uninitialised and error return values.

One has to install an uptodate gdb version (e.g. through MacPorts) and follow the instructions to give it the required permissions to function. Once that's done, the debugger component starts correctly, and appears to communicate with the gdb ("ggdb") slave process up to the point where the GUI is loaded and seemingly ready to go.

That's as far as I've gotten: even the "Interrupt" menu has no effect, the traceback panel shows no information either. Using the "stop all" button leads to a gdb crash; I have yet to determine what this is due to.

Feedback/guidance on how to procede will be appreciated.


Diffs (updated)
-----

  debuggers/gdb/gdb.h 6f99a60 
  debuggers/gdb/gdb.cpp 68e1768 
  debuggers/gdb/stty.cpp 736fff4 
  debuggers/CMakeLists.txt 8fe222c 
  debuggers/gdb/CMakeLists.txt 3d1125c 

Diff: https://git.reviewboard.kde.org/r/120510/diff/


Testing
-------

OS X 10.6.8 with kdelibs 4.14.1 and kdesdk git/kde4-legacy . Gdb 7.7.1 from MacPorts, compiled with python 2.7 support.


Thanks,

René J.V. Bertin

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.kde.org/pipermail/kde-mac/attachments/20141008/576647ad/attachment.html>


More information about the kde-mac mailing list