[MonoDevelop] How to step in to Mono source code?
ibboard at gmail.com
Sat Jan 8 11:20:20 EST 2011
On 31/12/10 20:08, Michael Hutchinson wrote:
> On Fri, Dec 31, 2010 at 4:17 AM, IBBoard<ibboard at gmail.com> wrote:
>> I found that the debuginfo was only for the native buts, because I installed
>> that before, but the .cs files are in the debugsource package (I checked
>> after I installed and it didn't work).
>> Just so that I know what I'm trying to achieve, what files do I need to have
>> where and what other variables/bindings/settings are needed? In Eclipse with
>> Java I just need to associate a zip of .java files to a JAR or install the
>> jdk-src package, which is really easy and flexible. I'm not entirely clear
>> on what Mono needs to have where at the moment, and it'd be a shame if it
>> wasn't easy to do with a standard install.
> Check whether the C# file paths referred to in stack traces exist on
> your machine.
Some comments/pointers on this issue, now that I've got it working:
1) Stack traces don't have to come from exceptions. If you scroll to the
right far enough in the Call Stack window then the path is there as well :)
2) It seems that the Mono repo in the OBS bundles the .cs files in the
-debugsource build in /usr/src/debug/mono-2.8.2, which needs sym-linking
under /usr/src/packages/BUILD/ for step-in to work on openSUSE 11.3, but
the standard openSUSE packages don't include it and I had to get the
.src.rpm myself 
2a) Installing the .src.rpm doesn't quite get you what you need. Open it
with file-roller, open the .tar.bz2 from inside it, and extract the
contents of *that* into the correct location
Oh, and a final semi-obvious one:
2b) Trying to make do with the 2.8.2 debugsource and symlinking it as
2.6.4 kinda works in that it shows code, but too many changes have
occurred so nothing matches up - obvious, but watch out for it before
trying to take a shortcut!
It could have been easier, but other than defaulting to not stepping
into non-project code then I think most of the simplicity issues are
openSUSE packaging issues rather than MonoDevelop. Now to see which
other SRPMs I need...
More information about the Monodevelop-list