From 2878636866633599b2ef50b58463a8e5e970f56d Mon Sep 17 00:00:00 2001 From: BrandonLWhite Date: Wed, 2 Apr 2014 14:10:22 -0500 Subject: [PATCH 1/3] Removed "." ApplicationIcon setting in Heapshot.Reader project that was causing build error. --- .gitignore | 1 + HeapShot.Reader/HeapShot.Reader.csproj | 5 +++-- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/.gitignore b/.gitignore index 1c8cf32..a3ef580 100644 --- a/.gitignore +++ b/.gitignore @@ -4,6 +4,7 @@ *.pidb *.userprefs *.app +*.pdb Makefile Makefile.in heap-shot-gui diff --git a/HeapShot.Reader/HeapShot.Reader.csproj b/HeapShot.Reader/HeapShot.Reader.csproj index cacedc8..d95d221 100644 --- a/HeapShot.Reader/HeapShot.Reader.csproj +++ b/HeapShot.Reader/HeapShot.Reader.csproj @@ -1,4 +1,4 @@ - + Debug @@ -8,7 +8,8 @@ {B3DF617E-A397-426C-847B-5D3DCEB57E51} Library HeapShot.Reader - . + + HeapShot.Reader v3.5 From c5c64b4a054797a34e231a211c36828034d81475 Mon Sep 17 00:00:00 2001 From: BrandonLWhite Date: Wed, 2 Apr 2014 14:20:16 -0500 Subject: [PATCH 2/3] Fixes to get heapshot.gui compiling in VS2012 and with gtk-sharp 2.12. - Bumped target frameworks to 4.0 to work with gtk-sharp 2.12 - Set all projects to output their binary into common "..\bin" solution directory. - Set CPU to x86 for compatibility with gtk-sharp 2.12 on 64-bit systems --- .gitignore | 2 ++ HeapShot.Gui.Widgets/HeapShot.Gui.Widgets.csproj | 10 ++++++---- HeapShot.Gui/HeapShot.Gui.csproj | 7 ++++--- HeapShot.Reader/HeapShot.Reader.csproj | 6 ++++-- HeapShot/HeapShot.csproj | 7 ++++--- 5 files changed, 20 insertions(+), 12 deletions(-) diff --git a/.gitignore b/.gitignore index a3ef580..00698c6 100644 --- a/.gitignore +++ b/.gitignore @@ -5,6 +5,8 @@ *.userprefs *.app *.pdb +*.user +*.suo Makefile Makefile.in heap-shot-gui diff --git a/HeapShot.Gui.Widgets/HeapShot.Gui.Widgets.csproj b/HeapShot.Gui.Widgets/HeapShot.Gui.Widgets.csproj index b73a999..d4f584c 100644 --- a/HeapShot.Gui.Widgets/HeapShot.Gui.Widgets.csproj +++ b/HeapShot.Gui.Widgets/HeapShot.Gui.Widgets.csproj @@ -1,4 +1,4 @@ - + Debug @@ -9,13 +9,14 @@ Library HeapShot.Gui.Widgets HeapShot.Gui.Widgets - v3.5 + v4.0 + true full true - . + ..\bin\ prompt 4 false @@ -23,6 +24,7 @@ + x86 none @@ -91,4 +93,4 @@ - + \ No newline at end of file diff --git a/HeapShot.Gui/HeapShot.Gui.csproj b/HeapShot.Gui/HeapShot.Gui.csproj index 3ca6ec8..ddd134b 100644 --- a/HeapShot.Gui/HeapShot.Gui.csproj +++ b/HeapShot.Gui/HeapShot.Gui.csproj @@ -1,4 +1,4 @@ - + Debug @@ -15,7 +15,7 @@ true full true - . + ..\bin\ prompt 4 true @@ -23,6 +23,7 @@ true + x86 none @@ -107,4 +108,4 @@ - + \ No newline at end of file diff --git a/HeapShot.Reader/HeapShot.Reader.csproj b/HeapShot.Reader/HeapShot.Reader.csproj index d95d221..c5e3f20 100644 --- a/HeapShot.Reader/HeapShot.Reader.csproj +++ b/HeapShot.Reader/HeapShot.Reader.csproj @@ -11,13 +11,14 @@ HeapShot.Reader - v3.5 + v4.0 + true full true - . + ..\bin\ prompt 4 false @@ -25,6 +26,7 @@ + x86 none diff --git a/HeapShot/HeapShot.csproj b/HeapShot/HeapShot.csproj index 974c7dc..a5882da 100644 --- a/HeapShot/HeapShot.csproj +++ b/HeapShot/HeapShot.csproj @@ -1,4 +1,4 @@ - + Debug @@ -14,13 +14,14 @@ true full true - . + ..\bin\ prompt 4 true + x86 none @@ -62,4 +63,4 @@ - + \ No newline at end of file From 8f10d0fb07858725aab5b205b4a5753a1631902b Mon Sep 17 00:00:00 2001 From: BrandonLWhite Date: Wed, 2 Apr 2014 14:39:46 -0500 Subject: [PATCH 3/3] Updated README. Changed example command-line args to "--profile=log:heapshot" to align with current mono versions. Added instructions for compiling and running on Windows. --- README | 15 +++++++++++++-- 1 file changed, 13 insertions(+), 2 deletions(-) diff --git a/README b/README index 8d2dd4d..77d5bd2 100644 --- a/README +++ b/README @@ -13,7 +13,7 @@ Enabling HeapShot To use HeapShot, you must run the application to be examined with the following command line: - mono --profile=heap-shot MyProgram.exe + mono --profile=log:heapshot MyProgram.exe This activates the `heap-shot' profiler for your application. @@ -107,7 +107,7 @@ Using the Command Line HeapShot to a Mono process that has been started with the --profile=heap-shot command line option: - mono --profile=heap-shot MyProgram.exe + mono --profile=log:heapshot MyProgram.exe And on a separate window you type: @@ -144,3 +144,14 @@ Creating a Mac app bundle ========================= Just run "make mac-app" + +Compiling and Running in Windows +================================ + + You can compile HeapShot with Microsoft Visual Studio 2012 (other versions might work as well) and also run HeapShot on a Windows system. + + You will need an installation of Mono and GtkSharp. This can be obtained from installing Xamarin Studio, or "Mono for Windows, Gtk#, and XSP" from http://www.go-mono.com/mono-downloads/download.html. + + Open heap-shot.sln in Visual Studio. Build HeapShot.Gui. + + If you get errors pertaining to missing references to atk-sharp, gdk-sharp etc., then you will need to add a Reference Path. To do this, open the project properties for HeapShot.Gui.Widgets and select "Reference Paths". Add the path "C:\Program Files (x86)\GtkSharp\2.12\lib\gtk-sharp-2.0" or wherever these DLLs are on your system. Build the HeapShot.Gui.Widgets project. It should compile without error. You can confirm that the References view doesn't show any yellow exclamation mark glyphs. You can then proceed with building HeapShot.Gui successfully.