【问题标题】:Simple GTK application on Beaglebone black has a blank white windowBeaglebone black 上的简单 GTK 应用程序有一个空白的白色窗口
【发布时间】:2014-08-26 14:35:13
【问题描述】:

我开始为 Beaglebone Black 开发并且刚刚为 GTK 编写了一个测试应用程序:

#include <gtk/gtk.h>

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

      gtk_init(&argc, &argv);

      window = gtk_window_new(GTK_WINDOW_TOPLEVEL);
      gtk_widget_show(window);

      gtk_main();

      return 0;
}

我编译使用

gcc -o simple simple.c `pkg-config --libs --cflags gtk+-2.0`

并且按预期成功。然而,当我在我的 BBB(运行 Angstrom)上运行应用程序时,我得到的只是显示屏左上角的一个白色方块。有什么想法可能是错的吗?

【问题讨论】:

    标签: gtk beagleboneblack


    【解决方案1】:

    听起来您的 BBB 没有运行窗口管理器,而您看到的只是未装饰的空窗口。尝试在窗口中添加一些小部件,看看它们是否出现

    window = gtk_window_new(GTK_WINDOW_TOPLEVEL);
    
    GtkWidget *button = gtk_button_new_with_title("Hello World!");
    gtk_container_add (GTK_CONTAINER (window), button);
    gtk_widget_show (button);
    
    gtk_widget_show (window);
    

    尝试在普通桌面上运行它,看看是否符合您的期望

    【讨论】:

    【解决方案2】:

    我今天下午一直在与同样的问题作斗争,我找到了一个适合我的解决方案。这里提出的解决方案:BeagleBoard forum post 是将窗口管理器从 gdm 切换到 xcfe。以下是步骤的记录:

    1) Install lxdm
    
    # opkg install lxdm
    
    2)  Disable gdm
    
    # systemctl disable gdm.service
    
    3) Enable lxdm
    
    # systemctl enable lxdm
    
    4)  install xcfe 
    
    # opkg install packagegroup-xfce-base
    
    5)  reboot and then when you get the login screen in the lower left make sure you select en for language and xfce for desktop otherwise it just brings you back to the login prompt - you should not know how long it took me to figure that one out....
    

    我刚刚完成了这个方法的测试,它对我有用:

    【讨论】:

      【解决方案3】:

      我在最新的 Angstrom 版本的 BBB (2013-09-04) 上也遇到了同样的问题。切换到 Debian 构建,一切正常。可能是 Gnome 版本,但我没有足够的 Linux 经验来确认这一点

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2020-05-03
        • 1970-01-01
        • 2017-06-06
        • 1970-01-01
        • 1970-01-01
        • 2019-11-13
        相关资源
        最近更新 更多