// "switch_page"
 //-----------------------------------------------------------------------------
 
+extern "C" {
 static void gtk_notebook_page_change_callback(GtkNotebook *WXUNUSED(widget),
                                               GtkNotebookPage *WXUNUSED(page),
                                               gint page,
 
     notebook->m_inSwitchPage = FALSE;
 }
+}
 
 //-----------------------------------------------------------------------------
 // "size_allocate"
 //-----------------------------------------------------------------------------
 
+extern "C" {
 static void gtk_page_size_callback( GtkWidget *WXUNUSED(widget), GtkAllocation* alloc, wxWindow *win )
 {
     if (g_isIdle)
         gtk_widget_size_allocate( win->m_wxwindow, alloc );
     }
 }
+}
 
 //-----------------------------------------------------------------------------
 // "realize" from m_widget
 //-----------------------------------------------------------------------------
 
+extern "C" {
 static gint
 gtk_notebook_realized_callback( GtkWidget * WXUNUSED(widget), wxWindow *win )
 {
 
     return FALSE;
 }
+}
 
 //-----------------------------------------------------------------------------
 // "key_press_event"
 //-----------------------------------------------------------------------------
 
+extern "C" {
 static gint gtk_notebook_key_press_callback( GtkWidget *widget, GdkEventKey *gdk_event, wxNotebook *notebook )
 {
     if (g_isIdle)
 
     return FALSE;
 }
+}
 
 //-----------------------------------------------------------------------------
 // InsertChild callback for wxNotebook