GTK+ - Bloqué à HelloWorld

Tags: #<Tag:0x00007f509b094258>

Bonsoir à tous,
je viens d’entamer Foundations of GTK+ Development de Andrew Krause, je viens seulement de passer hello world 1, après il en fait un autre mais cette fois avec un label en plus dans la fenêtre avec Hello world d’affiché tout simplement.
Voici le code :

#include <gtk/gtk.h>

static void destroy (GtkWidget*, gpointer);
static gboolean delete_event (GtkWidget*, GdkEvent*, gpointer);

int main (int argc,
char *argv[])
{
GtkWidget *window, *label;
gtk_init (&argc, &argv);
window = gtk_window_new (GTK_WINDOW_TOPLEVEL);
gtk_window_set_title (GTK_WINDOW (window), "Hello World!");
gtk_container_set_border_width (GTK_CONTAINER (window), 10);
gtk_widget_set_size_request (window, 200, 100);

/* Connect the main window to the destroy and delete-event signals. */
g_signal_connect (G_OBJECT (window), "destroy",
G_CALLBACK (destroy), NULL);
g_signal_connect (G_OBJECT (window), "delete_event",
G_CALLBACK (delete_event), NULL);

/* Create a new GtkLabel widget that is selectable. */
label = gtk_label_new ("Hello World");
gtk_label_set_selectable (GTK_LABEL (label), TRUE);

/* Add the label as a child widget of the window. */
gtk_container_add (GTK_CONTAINER (window), label);
gtk_widget_show_all (window);
gtk_main ();
return 0;
}

L’intellisense (désolé si on ne n’utilise pas ce mot, mais je viens de .NET) m’a bien proposer les fonctions et autre que je saisissais, donc logiquement j’ai toutes les bibliothèques, mais le compilateur me revois une erreur sur ces deux lignes :

/* Connect the main window to the destroy and delete-event signals. */
g_signal_connect (G_OBJECT (window), "destroy",
G_CALLBACK (destroy), NULL);
g_signal_connect (G_OBJECT (window), "delete_event",
G_CALLBACK (delete_event), NULL);

Build messages :
warning : ‘destroy’ used but never defined
warning : ‘delete_event’ used but never defined
undefined reference to ‘destroy’
undefined reference to ‘delete_event’
error : ld returned 1 exit status

Build log :
main.c:(.text.startup+0x88): undefined reference to destroy' main.c:(.text.startup+0xb3): undefined reference todelete_event’
collect2: error: ld returned 1 exit status
Process terminated with status 1 (0 minute(s), 1 second(s))
3 error(s), 2 warning(s) (0 minute(s), 1 second(s))

Si quelqu’un à une idée ?? j)apprends et je n’ai pas encore de réflexe…. Vous imaginez bloqué à HelloWorld….

bien sur il y’avais ce code également :

/* Stop the GTK+ main loop function when the window is destroyed. */
static void
destroy (GtkWidget *window,
gpointer data)
{
gtk_main_quit ();
}
/* Return FALSE to destroy the widget. By returning TRUE, you can cancel
* a delete-event. This can be used to confirm quitting the application. */
static gboolean
delete_event (GtkWidget *window,
GdkEvent *event,
gpointer data)
{
return FALSE;
} 

Désolé, la fatigue…

Bonjour

[Hors sujet]

[/Hors sujet]

1 J'aime