2011-02-12 32 views
1

考虑最简单的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上运行我的应用程序?

感谢

回答

0

./share/locale/*包括翻译,所以你要选择你自己。你想翻译吗,还是想节省磁盘空间? 根据您的应用程序的运输方式(例如简单打包在.rar或安装程序中),您可以有条件地安装这些翻译。 唯一需要的文件是库文件,如libgtk-x11-2.0.dll,libglib-2.0.dll,...

相关问题