:: [DNG] gcc error: "error: unknown ty…
Page principale
Supprimer ce message
Répondre à ce message
Auteur: Edward Bartolo
Date:  
À: dng
Sujet: [DNG] gcc error: "error: unknown type name‘GtkObject’"
Hi All,

I am trying to practice creating a GUI with gtk but I am failing to
compile my little test application.

--------------------------------------------

#include <gtk/gtk.h>

void
on_window_destroy (GtkObject *object, gpointer user_data)
{
    gtk_main_quit ();
}


int
main (int argc, char *argv[])
{
    GtkBuilder      *builder;
    GtkWidget       *window;


    gtk_init (&argc, &argv);


    builder = gtk_builder_new ();
    gtk_builder_add_from_file (builder, "gui.glade", NULL);
    window = GTK_WIDGET (gtk_builder_get_object (builder, "window1"));
    gtk_builder_connect_signals (builder, NULL);


    g_object_unref (G_OBJECT (builder));


    gtk_widget_show (window);
    gtk_main ();


    return 0;
}


------------------------------

The .glade file:

<?xml version="1.0" encoding="UTF-8"?>
<!-- Generated with glade 3.18.3 -->
<interface>
  <requires lib="gtk+" version="3.12"/>
  <object class="GtkWindow" id="window1">
    <property name="can_focus">False</property>
    <child>
      <object class="GtkBox" id="box1">
        <property name="visible">True</property>
        <property name="can_focus">False</property>
        <property name="orientation">vertical</property>
        <child>
          <object class="GtkMenuButton" id="menubutton1">
            <property name="visible">True</property>
            <property name="can_focus">True</property>
            <property name="receives_default">True</property>
            <child>
              <placeholder/>
            </child>
          </object>
          <packing>
            <property name="expand">False</property>
            <property name="fill">True</property>
            <property name="position">0</property>
          </packing>
        </child>
        <child>
          <object class="GtkTextView" id="textview1">
            <property name="visible">True</property>
            <property name="can_focus">True</property>
            <property name="wrap_mode">word</property>
          </object>
          <packing>
            <property name="expand">True</property>
            <property name="fill">True</property>
            <property name="position">1</property>
          </packing>
        </child>
        <child>
          <object class="GtkToggleButton" id="togglebutton1">
            <property name="label" translatable="yes">togglebutton</property>
            <property name="width_request">100</property>
            <property name="visible">True</property>
            <property name="can_focus">True</property>
            <property name="receives_default">True</property>
            <property name="halign">end</property>
            <property name="valign">center</property>
            <property name="xalign">0.51999998092651367</property>
            <property name="image_position">right</property>
            <signal name="clicked" handler="on_togglebutton1_clicked"
object="textview1" swapped="no"/>
          </object>
          <packing>
            <property name="expand">False</property>
            <property name="fill">True</property>
            <property name="pack_type">end</property>
            <property name="position">2</property>
          </packing>
        </child>
      </object>
    </child>
  </object>
</interface>
------------------------------


The command to compile:
$ gcc -o gtkprog gtkprog.c `pkg-config --libs --cflags gtk+-3.0`

Could anyone shed some light on what I am doing wrong?

Edward