Compiling MGtk Applications

Compiling MGtk Applications — How to compile your MGtk application

Compiling MGtk Applications on UNIX

To compile a MGtk application, you need to tell the compiler where to find the MGtk header files and libraries. This is done with the pkg-config utility.

The following interactive shell session demonstrates how pkg-config is used (the actual output on your system may be different):

$ pkg-config --cflags mgtk-0.0
-I/usr/local/include/mgtk-0.0 -I/usr/local/lib/mgtk-0.0/include
$ pkg-config --libs mgtk-0.0
-L/usr/local/lib -lmgtk

The simplest way to compile a program is to use the "backticks" feature of the shell. If you enclose a command in backticks (not single quotes), then its output will be substituted into the command line before execution. So to compile a MGtk Hello, World, you would type the following:

$ cc hello.c -o hello `pkg-config --cflags --libs mgtk-0.0` \
	`pkg-config --cflags --libs mlib-0.2` `pkg-config --cflags --libs gtk+-2.0`

Come si vede, per la compilazione di un programma scritto attraverso la libreria MGtk è necessario anche il link esplicito, attraverso pkg-config, alle directory della MLib e della GTK+. E' importante postporre i link della MLib e della GTK+ ai link della MGtk, onde evitare possibili errori di gcc in fase di compilazione.

Attenzione:

Essendo la libreria MGtk costruita attraverso l'utilizzo di funzioni contenute nella MLib e nella GTK+, non essendoci link alle directory e alle librerie, è necessario, onde evitare problemi ed errori in fase di compilazione, inserire prima il riferimento alla MGtk e poi quello alla MLib e alla GTK+ come nell'esempio sopra citato!!!

The recommended way of using MGtk has always been to only include the toplevel headers mgtk.h.

Compiling MGtk Applications on WIN32

To compile a MGtk application, you need to tell the compiler where to find the MGtk header files and libraries.

-I C:\mgtk-0.0\include\mgtk-0.0 
-L C:\mgtk-0.0\lib
-lmgtk-0.0

Attenzione:

Essendo la libreria MGtk costruita attraverso l'utilizzo di funzioni contenute nella MLib e nella GTK+, non essendoci link alle directory e alle librerie, è necessario, onde evitare problemi ed errori in fase di compilazione, inserire prima il riferimento alla MGtk e poi quello alla MLib e alla GTK+ come nell'esempio seguente:

$ gcc hello.c -o hello 
-I C:\mgtk-0.0\include\mgtk-0.0 -L C:\mgtk-0.0\lib -lmgtk-0.0
-I C:\mlib-0.2\include\mlib-0.2 -L C:\mlib-0.2\lib -lmlib-0.2 
`pkg-config --cflags --libs gtk+-2.0`

The recommended way of using MGtk has always been to only include the toplevel headers mgtk.h.