GtkAda Simple Window: 找不到 pixbuf 加载程序或 mime 数据库
GtkAda Simple Window: pixbuf loaders or the mime database could not be found
使用 Gnat-2020-Community 版本和 Gtkada 我尝试在 Debian 10.2 上创建一个简单的图形用户界面 (x86_64 GNU/Linux)。
该项目基于“从模板创建项目”对话框中的 GtkAda 的“简单 window”项目(我假设代码 运行 开箱即用)。
-- Initialize GtkAda.
Gtk.Main.Init;
-- Create a window with a size of 400x400
Gtk_New (Win);
Win.Set_Default_Size (400, 400);
-- Create a box to organize vertically the contents of the window
Gtk_New_Vbox (Box);
Win.Add (Box);
-- Add a label
Gtk_New (Label, "Hello world.");
Box.Add (Label);
-- Stop the Gtk process when closing the window
Win.On_Delete_Event (Delete_Event_Cb'Unrestricted_Access);
-- Show the window and present it
Win.Show_All;
Win.Present;
-- Start the Gtk+ main loop
Gtk.Main.Main;
除了将 'with "gtkada";' 调整为项目 gpr 文件中 gtkada.gpr 文件的正确路径外,没有应用任何更改。
正确检测到 GtkAda。该项目在静态和可重定位配置中均已成功构建。
但是,程序无法运行成功,而是在执行Win.Show_All;
时生成此终端输出:
/home/user/workspace_ada/Simple_Window/Simple_Window/obj/main
Fontconfig warning: "/home/user/workspace_ada/gnat-2020/etc/fonts/fonts.conf", line 86: unknown element "blank"
(main:4012): Gtk-WARNING **: 21:38:39.988: Could not load a pixbuf from icon theme.
This may indicate that pixbuf loaders or the mime database could not be found.
**
Gtk:ERROR:../../../../gtk/gtkiconhelper.c:494:ensure_surface_for_gicon: assertion failed (error == NULL): Failed to load /home/user/workspace_ada/gnat-2020/share/icons/Adwaita/16x16/status/image-missing.png: Format der Bilddatei unbekannt (gdk-pixbuf-error-quark, 3)
raised PROGRAM_ERROR : unhandled signal
[2020-08-20 21:38:40] process exited with status 1, elapsed time: 00.30s
我已经按照 Gtkada 的要求安装了以下软件包:libglib*
、libgtk*
。
另外我安装了libx11*
和libncurses*
,因为我感觉好像会有用。
我在 Whosebug 上搜索了互联网和 Gtkada 社区,但没有成功。
因此,我想向 Whosebug 社区的 Ada 专家和大师们请教一些想法或我所缺少的东西。
非常感谢。最好的问候。
问题:不能运行直接在Linux上用GtkAda写的程序。在启动程序之前,您必须始终使用脚本 gtkada-env.sh
或等效脚本来为与 GtkAda 捆绑在一起的 Gtk 设置正确的路径和环境变量。
如果您想查看启动脚本的外观,这里有一个小示例:https://github.com/thindil/hunter/blob/master/hunter.sh
如果您打算使用 gtkada-env.sh
脚本,您只需 运行 一次,因为它会创建一个新的默认值 shell,并具有适当的路径和变量设置
使用 Gnat-2020-Community 版本和 Gtkada 我尝试在 Debian 10.2 上创建一个简单的图形用户界面 (x86_64 GNU/Linux)。
该项目基于“从模板创建项目”对话框中的 GtkAda 的“简单 window”项目(我假设代码 运行 开箱即用)。
-- Initialize GtkAda.
Gtk.Main.Init;
-- Create a window with a size of 400x400
Gtk_New (Win);
Win.Set_Default_Size (400, 400);
-- Create a box to organize vertically the contents of the window
Gtk_New_Vbox (Box);
Win.Add (Box);
-- Add a label
Gtk_New (Label, "Hello world.");
Box.Add (Label);
-- Stop the Gtk process when closing the window
Win.On_Delete_Event (Delete_Event_Cb'Unrestricted_Access);
-- Show the window and present it
Win.Show_All;
Win.Present;
-- Start the Gtk+ main loop
Gtk.Main.Main;
除了将 'with "gtkada";' 调整为项目 gpr 文件中 gtkada.gpr 文件的正确路径外,没有应用任何更改。
正确检测到 GtkAda。该项目在静态和可重定位配置中均已成功构建。
但是,程序无法运行成功,而是在执行Win.Show_All;
时生成此终端输出:
/home/user/workspace_ada/Simple_Window/Simple_Window/obj/main
Fontconfig warning: "/home/user/workspace_ada/gnat-2020/etc/fonts/fonts.conf", line 86: unknown element "blank"
(main:4012): Gtk-WARNING **: 21:38:39.988: Could not load a pixbuf from icon theme.
This may indicate that pixbuf loaders or the mime database could not be found.
**
Gtk:ERROR:../../../../gtk/gtkiconhelper.c:494:ensure_surface_for_gicon: assertion failed (error == NULL): Failed to load /home/user/workspace_ada/gnat-2020/share/icons/Adwaita/16x16/status/image-missing.png: Format der Bilddatei unbekannt (gdk-pixbuf-error-quark, 3)
raised PROGRAM_ERROR : unhandled signal
[2020-08-20 21:38:40] process exited with status 1, elapsed time: 00.30s
我已经按照 Gtkada 的要求安装了以下软件包:libglib*
、libgtk*
。
另外我安装了libx11*
和libncurses*
,因为我感觉好像会有用。
我在 Whosebug 上搜索了互联网和 Gtkada 社区,但没有成功。
因此,我想向 Whosebug 社区的 Ada 专家和大师们请教一些想法或我所缺少的东西。
非常感谢。最好的问候。
问题:不能运行直接在Linux上用GtkAda写的程序。在启动程序之前,您必须始终使用脚本 gtkada-env.sh
或等效脚本来为与 GtkAda 捆绑在一起的 Gtk 设置正确的路径和环境变量。
如果您想查看启动脚本的外观,这里有一个小示例:https://github.com/thindil/hunter/blob/master/hunter.sh
如果您打算使用 gtkada-env.sh
脚本,您只需 运行 一次,因为它会创建一个新的默认值 shell,并具有适当的路径和变量设置