Hey Tom, I saw your mail, I just wanted to explain SeoZ how to do now until I put it there automatically. I will change the name to eo_step. I know this site, I don't know yet which way to use to configure gdb. For the moment, I create manually a .gdbinit in my home directory and there source the python script. Well, I can put the script in src/utils/Eo and then install it into /opt/e17/share/eo/utils or something like that. But I think the user will have to configure manually gdb, i.e add 'source /opt/e17/.../eo_step.py' into ~/.gdbinit. Just for info, there is some bug into gdb that makes it crash with the script in a specific scenario. I opened a ticket <http://sourceware.org/bugzilla/show_bug.cgi?id=14916> there and hope it will help.
Daniel On 12/05/2012 01:29 AM, Tom Hacohen wrote: > Daniel, > > It should be installed (as I've said before) see > http://sourceware.org/gdb/onlinedocs/gdb/Python.html for more info. > Then it'll be just a matter of loading the script and using it (or possibly > it'll get loaded automatically). Also, as I said, I think eo_jump is a > terrible name and it should be changed to eo_step. > > Actually, reading back the thread, you didn't comment on any of my messages. > > > On Tue, Dec 4, 2012 at 12:13 PM, daniel.za...@samsung.com < > daniel.za...@samsung.com> wrote: > >> You open gdb and you paste the function (from python to end) there. >> After, when you encounter a eo_do function, instead of stepping into it, >> you call the function (just type eo_jump) and it will do the job alone >> and reach the function that you wanted. >> >> On 12/04/2012 10:54 AM, Daniel Juyung Seo wrote: >>> Awesome!!!! >>> I and co-workers have hard time to debug with eo. >>> This looks very good but how can I use it? >>> >>> Daniel Juyung Seo (SeoZ) >>> >>> On Tue, Dec 4, 2012 at 5:15 PM, daniel.za...@samsung.com < >>> daniel.za...@samsung.com> wrote: >>> >>>> Hi all, >>>> >>>> I am sure you faced difficulties to debug your program due to changes >>>> with Eo. It is hard to know which function will be called by eo_do or >>>> eo_do_super because of inheritance. >>>> >>>> I have written a python function for gdb that helps a lot. The command >>>> is eo_jump, no arguments. >>>> You can execute it when you reach some eo_do/eo_do_super... and it will >>>> jump over Eo code. >>>> >>>> This is a prototype so sorry for the potential bugs. >>>> >>>> For those who will look at this function, you can note some check that >>>> the function is None, it is because Eo calls for memcpy. In this case, >>>> we want it to not stop on this so we have to continue searching. >>>> >>>> Feel free to change, propose, hate this script :) >>>> >>>> Daniel (JackDanielZ) >>>> >>>> Function: >>>> python >>>> class Eo_jump(gdb.Command): >>>> def __init__(self): >>>> gdb.Command.__init__(self, "eo_jump", gdb.COMMAND_OBSCURE) >>>> >>>> def invoke (self, arg, from_tty): >>>> while True: >>>> gdb.execute("step") >>>> self.priv_filename = >>>> gdb.selected_frame().find_sal().symtab.filename >>>> self.priv_function = gdb.selected_frame().function() >>>> if (self.priv_filename != "lib/eo/eo.c") and >>>> (self.priv_function != None): >>>> break >>>> if (self.priv_filename == "lib/eo/eo.c"): >>>> gdb.execute("step") >>>> if (self.priv_function == None): >>>> gdb.execute("finish") >>>> Eo_jump() >>>> end >>>> >>>> >>>> >> ------------------------------------------------------------------------------ >>>> LogMeIn Rescue: Anywhere, Anytime Remote support for IT. Free Trial >>>> Remotely access PCs and mobile devices and provide instant support >>>> Improve your efficiency, and focus on delivering more value-add services >>>> Discover what IT Professionals Know. Rescue delivers >>>> http://p.sf.net/sfu/logmein_12329d2d >>>> _______________________________________________ >>>> enlightenment-devel mailing list >>>> enlightenment-devel@lists.sourceforge.net >>>> https://lists.sourceforge.net/lists/listinfo/enlightenment-devel >>>> >> ------------------------------------------------------------------------------ >>> LogMeIn Rescue: Anywhere, Anytime Remote support for IT. Free Trial >>> Remotely access PCs and mobile devices and provide instant support >>> Improve your efficiency, and focus on delivering more value-add services >>> Discover what IT Professionals Know. Rescue delivers >>> http://p.sf.net/sfu/logmein_12329d2d >>> _______________________________________________ >>> enlightenment-devel mailing list >>> enlightenment-devel@lists.sourceforge.net >>> https://lists.sourceforge.net/lists/listinfo/enlightenment-devel >>> >> >> >> ------------------------------------------------------------------------------ >> LogMeIn Rescue: Anywhere, Anytime Remote support for IT. Free Trial >> Remotely access PCs and mobile devices and provide instant support >> Improve your efficiency, and focus on delivering more value-add services >> Discover what IT Professionals Know. Rescue delivers >> http://p.sf.net/sfu/logmein_12329d2d >> _______________________________________________ >> enlightenment-devel mailing list >> enlightenment-devel@lists.sourceforge.net >> https://lists.sourceforge.net/lists/listinfo/enlightenment-devel >> > > ------------------------------------------------------------------------------ LogMeIn Rescue: Anywhere, Anytime Remote support for IT. Free Trial Remotely access PCs and mobile devices and provide instant support Improve your efficiency, and focus on delivering more value-add services Discover what IT Professionals Know. Rescue delivers http://p.sf.net/sfu/logmein_12329d2d _______________________________________________ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel