2012-05-25 30 views
5

tôi biên soạn thành công chương trình simple.cc sau:Ý nghĩa của GLib-GIO-QUAN TRỌNG lỗi khẳng định

#include <gtkmm.h> 

int main (int argc, char *argv[]) 
{ 
    Glib::RefPtr<Gtk::Application> app = 
    Gtk::Application::create(argc, argv, 
     "org.gtkmm.examples.base"); 

    Gtk::ApplicationWindow window; 

    return app->run(window); 
} 

sử dụng lệnh sau:

g++ simple.cc -o simple `pkg-config gtkmm-3.0 --cflags --libs` 

nào đã cho tôi đơn giản thực thi, nhưng khi Tôi đã cố gắng chạy nó, tôi nhận được lỗi sau:

(simple:2964): GLib-GIO-CRITICAL **: g_application_list_actions: assertion `application->priv->is_registered' failed 
Segmentation fault (core dumped) 

Theo như tôi có thể nói, tôi có mới nhất và tuyệt vời nhất Gói GLib. Tôi đang chạy Ubuntu 12.04 LTS.

Trả lời

12

Tôi đã gặp vấn đề tương tự như tôi vừa mới bắt đầu trên cùng một hướng dẫn. Thay thế:

Gtk::ApplicationWindow window; 

với

GTK::Window window; 

Nếu bạn đọc các mô tả của mã trong hướng dẫn sau này thực sự là mã mà được thảo luận. Thực hiện thay đổi này làm cho chương trình làm việc cho tôi.

+0

Đã hoạt động! Cảm ơn! – mring

0

Thử kết nối cửa sổ của bạn với phiên bản ứng dụng. Tạo nó như sau:

Gtk::ApplicationWindow window(app); 
+0

Cảm ơn đề xuất, nhưng tôi vẫn gặp lỗi tương tự. – mring