Une bug en c
sofi
-
Char Snipeur Messages postés 9813 Date d'inscription Statut Contributeur Dernière intervention -
Char Snipeur Messages postés 9813 Date d'inscription Statut Contributeur Dernière intervention -
Bonjour,
Je me permet de vous demander de l'aide car voila 3 jours que je but sur un problème (qui ne doit pas en être un) lors de l'utilisation de cairo avec GTK+.
Mon problème est le suivant:
J'ai un défaut "undefined reference to 'gdk_cairo_create' " lors de la compilation de mon code ci dessous:
Quelqu'un pourrait-il éclairer ma lanterne?
Merci d'avance.
sinon
alors comment je peux ajouter lib gdk-win32-2.0"?
Je me permet de vous demander de l'aide car voila 3 jours que je but sur un problème (qui ne doit pas en être un) lors de l'utilisation de cairo avec GTK+.
Mon problème est le suivant:
J'ai un défaut "undefined reference to 'gdk_cairo_create' " lors de la compilation de mon code ci dessous:
expose_evt_reaction( GtkWidget *widget, GdkEventExpose *event, gpointer data ) { // c'est la structure qui permet d'afficher dans une zone de dessin // via Cairo cairo_t* cr ; cr=gdk_cairo_create(widget->window); cairo_set_source_rgb (cr, 1, 1, 1); // choisit le blanc. cairo_paint( cr ); // remplit tout dans la couleur choisie. cairo_set_source_rgb (cr, 0, 1, 0); cairo_rectangle (cr, 50, 50, 100, 100 ); cairo_fill_preserve( cr ); // remplit la forme actuelle (un rectangle) cairo_set_line_width(cr, 3); cairo_set_source_rgb (cr, 0, 0.5, 0); cairo_stroke( cr ); // trace la forme actuelle (le même rectangle) // On a fini, on peut détruire la structure. cairo_destroy (cr); return TRUE; }
Quelqu'un pourrait-il éclairer ma lanterne?
Merci d'avance.
sinon
alors comment je peux ajouter lib gdk-win32-2.0"?
2 réponses
Bonjour, en général ce genre d'erreur viens du fait que tu oublies d'ajouter une bibliothèque lors de l'édition des liens. Il ne trouve pas la fonction.
En ce qui concerne la façon d'ajouter la bibliothèque lors de la compilation, ça dépend de comment tu compile et du compilateur.
En ce qui concerne la façon d'ajouter la bibliothèque lors de la compilation, ça dépend de comment tu compile et du compilateur.
pour être sur, il faut regarder les lignes de compilation.
voir ce qui a été ajouté. Et trouver exactement la bonne bibliothèque. Peut être faut il en inclure plusieurs même.
avec l'utilitaire nm, tu peut regarder les différentes entrées des bibliothèques et voir s'il y a la fonction que tu cherches.
voir ce qui a été ajouté. Et trouver exactement la bonne bibliothèque. Peut être faut il en inclure plusieurs même.
avec l'utilitaire nm, tu peut regarder les différentes entrées des bibliothèques et voir s'il y a la fonction que tu cherches.
donc un "-lgdkcairo" dans les options de lien (en supposant que tu compile avec gcc).
tu dois avoir quelque part un fichierlibgdkcairo.a ou un truc dans le genre.
prject puis build option puis linker setting et j'ai ajouté cairo mais il y a rien changé?!! est ce que vous avez une explication s'il vous plait