使用最小运行时软件包运行一个独立的GTK +的Windows应用程序
问题描述:
考虑最简单的GTK +应用程序:使用最小运行时软件包运行一个独立的GTK +的Windows应用程序
gcc -o hello.exe hello.c -mms-bitfields -IC:/gtk/include/gtk-2.0 -IC:/gtk/lib/gtk-2.0
/include -IC:/gtk/include/atk-1.0 -IC:/gtk/include/cairo -IC:/gtk/include/gdk-pixbuf-2.0 -IC:/gtk/include/pang
o-1.0 -IC:/gtk/include/glib-2.0 -IC:/gtk/lib/glib-2.0/include -IC:/gtk/include -IC:/gtk/include/freetype2 -IC:
/gtk/include/libpng14 -LC:/gtk/lib -lgtk-win32-2.0 -lgdk-win32-2.0 -latk-1.0 -lgio-2.0 -lpangowin32-1.0 -lgdi
32 -lpangocairo-1.0 -lgdk_pixbuf-2.0 -lpango-1.0 -lcairo -lgobject-2.0 -lgmodule-2.0 -lgthread-2.0 -lglib-2.0
-lintl
为了运行:
#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;
}
我用这个成功地编译它在Windows hello.exe作为独立程序包含所有GLib,cairo,Pango,ATK,gdk-pixbuf,gettext-runtime,fontconfig,freetype,expat,libpng和zlib运行时包装。该程序运行得非常好,问题是,所有这些运行时间的东西需要大约40 MB的磁盘空间。
这个简单的程序需要./share/locale(25 MB)中的所有文件吗? ¿是否有任何方法使用最小运行时包在Windows上运行我的应用程序?
感谢
答
./share/locale/*包括翻译,所以你要选择你自己。你想翻译吗,还是想节省磁盘空间? 根据您的应用程序的运输方式(例如简单打包在.rar或安装程序中),您可以有条件地安装这些翻译。 唯一需要的文件是库文件,如libgtk-x11-2.0.dll,libglib-2.0.dll,...