Skip to content
This repository

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP

Gtk# is a Mono/.NET binding to the cross platform Gtk+ GUI toolkit and the foundation of most GUI apps built with Mono

build: Add a pkg-config file for gdk-sharp-3.0

This allows consumers to specifically require gdk-sharp-3.0 without
having to pull in the full gtk-sharp-3.0.

Closes issue #101.

Signed-off-by: Bertrand Lorentz <bertrand.lorentz@gmail.com>
latest commit dee590926a
Marcin Kolny loganek authored April 03, 2014 bl8 committed April 21, 2014
Octocat-spinner-32 atk generator: Create a directory for each namespace March 01, 2014
Octocat-spinner-32 audit audit: Add a README file March 29, 2013
Octocat-spinner-32 cairo build: Enclose gacutil calls in double quotes February 23, 2014
Octocat-spinner-32 doc doc: Remove reference to Dbus class, it was renamed to DBus April 19, 2014
Octocat-spinner-32 gdk build: Add a pkg-config file for gdk-sharp-3.0 April 21, 2014
Octocat-spinner-32 generator generator: Add new keyword to GType property if it hides parent April 21, 2014
Octocat-spinner-32 gio generator: Create a directory for each namespace March 01, 2014
Octocat-spinner-32 glib build: Fix references to AssemblyInfo.cs in makefiles on Windows February 23, 2014
Octocat-spinner-32 gtk build: Add a pkg-config file for gdk-sharp-3.0 April 21, 2014
Octocat-spinner-32 gtkdotnet build: Fix references to AssemblyInfo.cs in makefiles on Windows February 23, 2014
Octocat-spinner-32 pango generator: Create a directory for each namespace March 01, 2014
Octocat-spinner-32 parser Clean up .gitignore files October 13, 2013
Octocat-spinner-32 sample build: Fix Makefile of valtest and opaquetest samples April 21, 2014
Octocat-spinner-32 sources gtk: Fix dll name and use a const for all DllImports in custom code February 23, 2014
Octocat-spinner-32 .gitignore Add *.pdb to .gitignore February 23, 2014
Octocat-spinner-32 AUTHORS release: Update AUTHORS for 2.99.1 September 22, 2013
Octocat-spinner-32 AssemblyInfo.cs.in Remove ClassInitializer attributes. February 09, 2011
Octocat-spinner-32 COPYING Replaced COPYING with LGPL2-only license November 17, 2012
Octocat-spinner-32 ChangeLog.old Archive Changelog as Changelog.old October 14, 2012
Octocat-spinner-32 HACKING Update various bits of documentation in READMEs and HACKING October 14, 2012
Octocat-spinner-32 Makefile.am Add and use gapi.xsd to validate GAPI XML files February 23, 2013
Octocat-spinner-32 Makefile.include generator: Create a directory for each namespace March 01, 2014
Octocat-spinner-32 NEWS release: Small adjustments to NEWS for 2.99.2 December 04, 2013
Octocat-spinner-32 README Simplify instructions about choosing the installation prefix November 02, 2013
Octocat-spinner-32 README.generator silly typo April 16, 2006
Octocat-spinner-32 TODO Update TODO October 14, 2012
Octocat-spinner-32 autogen.sh build: Fix autogen.sh for recent changes in configure.ac September 08, 2013
Octocat-spinner-32 configure.ac build: Add a pkg-config file for gdk-sharp-3.0 April 21, 2014
Octocat-spinner-32 gapi.xsd generator: Add support for fixed length arrays as method parameters April 21, 2014
Octocat-spinner-32 gtk-sharp-2.0-dev.wxs.in 2008-10-13 Brad Taylor <brad@getcoded.net> October 13, 2008
Octocat-spinner-32 gtk-sharp-2.0-lib.wxs.in 2008-10-13 Brad Taylor <brad@getcoded.net> October 13, 2008
Octocat-spinner-32 gtk-sharp.sln Add an audit.csproj to the MonoDevelop solution March 29, 2013
Octocat-spinner-32 gtk-sharp.snk Add gtk-sharp.snk June 08, 2004
Octocat-spinner-32 policy.config.in 2005-09-21 Mike Kestner <mkestner@novell.com> September 22, 2005
README
The Gtk# website can be found at: http://www.mono-project.com/GtkSharp

Gtk# is a .NET language binding for the GTK+ toolkit and assorted GNOME
libraries. Gtk# is free software, licensed under the GNU LGPL.

Building & Installing Gtk#:
---------------------------

    Install the gtk-3 development headers first. On Debian, this can be done using:
    apt-get install libgtk-3-dev

    The build is the traditional:

        ./configure
        make
        make install

    You may want to consider using configure's prefix option to install
    Gtk# using the same prefix as Mono.  That way all of your .NET assemblies
    get placed in the same place, and you don't need to do any extra "configuring"
    to make it so mono (and mint) can find your assemblies.  In other words,
    doing something like:

        ./configure --prefix=`pkg-config --variable=prefix mono`
        make
        make install

    If you are compiling from GIT, you will need libtool and the auto* tools
    and will need to replace the configure above with autogen.sh.


The gui-thread-check profiler module.
-------------------------------------

    Since version 3 of gtk# a profiler called "gui-thread-check" is included as
    part of the install for debugging purposes. (It's located in the subfolder
    gtk/gui-thread-check .)

    This profiler module can be used to check if a GTK# application is trying to
    invoke gtk or gdk methods from a thread which is not the main GUI thread.

    To use it, run your application with the command:

        mono --profile=gui-thread-check yourapp.exe

    If the profiler is properly installed, you'll see an output like this:

        *** Running with gui-thread-check ***
        *** GUI THREAD INITIALIZED: 2861676352

    While the application is running, if the profiler detects a non-gui thread
    invoking gtk methods, it will print a warning message together with a
    stack trace. For example:

        *** GTK CALL NOT IN GUI THREAD: Widget.gtk_widget_get_parent
           Widget.get_Parent
           SourceEditorWidget.SetLastActiveEditor
           SourceEditorWidget.get_TextEditor
           SourceEditorWidget.get_Document
           SourceEditorWidget.HandleParseInformationUpdaterWorkerThreadDoWork
           BackgroundWorker.OnDoWork
           BackgroundWorker.ProcessWorker


Discussion & Support:
---------------------

    A mailing list for Gtk# discussion is available.

    You can subscribe to the mailing list by visiting:

        http://lists.ximian.com/mailman/listinfo/gtk-sharp-list

    And following the instructions (on that page) to subscribe.
    Messages are posted on this mailing list by sending them to:

        gtk-sharp-list@ximian.com

    (The mailing list requires you to subscribe in order to post
    messages.)

    An archive of this mailing list can be found at:

        http://lists.ximian.com/archives/public/gtk-sharp-list/

    Also, people can get help with and discuss Gtk# on IRC via the
    #gtk# or #mono channels on the irc.gnome.org IRC server.

    People looking for general help with C# should visit the
    #c# channel on irc.freenode.net IRC server.


Developers:
-----------

    For developers wishing to "get started" with Gtk#, they are encouraged
    to read the Mono Hand Book:

        http://www.mono-project.com/Monkeyguide


Hackers:
--------

    For those who wish to help with the development of Gtk#, they should
    read the file named: HACKING.

    Also, anyone wishing to hack Gtk# is encouraged to join the Gtk#
    mailing list. And to visit the #gtk# IRC channel (on irc.gnome.org).
Something went wrong with that request. Please try again.