• gtk+-3.21.4 static build step in windows XP


    In recent days the weather is very hot Unable to sleep properly Under the state of daze research gtk3 static compiler.
    -------------------------------------------------------------------------------------------------------
    build static libs
    -------------------------------------------------------------------------------------------------------
    export LIBFFI_CFLAGS=" -I/usr/local/lib/libffi-3.2.1/include " 
    export LIBFFI_LIBS=" -lffi " 
    export ZLIB_CFLAGS=-I/usr/local/include 
    export ZLIB_LIBS=-lz 
    export CFLAGS=" -I/usr/local/include -O2 -Wall -march=i686 -mms-bitfields -mthreads -static " 
    export CPPFLAGS=" -I/usr/local/include " 
    export LDFLAGS=" -L/usr/local/lib " 
    export LIBS=' -lpsapi -lpng -lffi -lgdiplus -luuid -lexpat -lgdi32 -lmsimg32  -lpixman-1 -lfontconfig -lxml2 -llzma -lmswsock -lfreetype -lpng16 -lz -lharfbuzz -lharfbuzz-icu -lglib-2.0 -lws2_32 -lole32 -lwinmm -lshlwapi -lintl -liconv -lpthread '
    
    ./configure --prefix=/usr/local 
    --enable-static 
    --disable-shared 
    --with-included-immodules=ime 
    --disable-gtk-doc
    
    GTK+ 3.21.4
    ===========
    
    GDK backends:         win32
    Print backends:       file lpr
    Dynamic modules:      yes
    Included immodules:   ime
    colord support:       no
    Introspection:        no
    Debugging:            yes
    Documentation:        no
    
    ---------------------------------------------------------------------------------------------
    modify ./makefile
    SRC_SUBDIRS = gdk gtk libgail-util modules demos 
    ---------------------------------------------------------------------------------------------
    __declspec(dllexport)                    fix to -->   __attribute__((visibility ("default")))
    __stdcall _export                        fix to -->   __attribute__((visibility ("default")))
    define PNG_IMPEXP __declspec(dllimport)  fix to -->   define PNG_IMPEXP
    __attribute__((visibility ("hidden")))   fix to -->   __attribute__((visibility ("default")))
    delete all DllMain function
    ---------------------------------------------------------------------------------------------
    gtk/gtksearchengine.c  error: expected identifier before numeric constant
    ---------------------------------------------------------------------------------------------
    enum 
    {
      HITS_ADDED,
      HITS_SUBTRACTED,
      FINISHED,
      ERROR_S,          ERROR fix to -> ERROR_S
      LAST_SIGNAL
    }; 
    
    signals[ERROR_S] =
                 ^^
    g_signal_emit (engine, signals[ERROR_S], 0, error_message);
                                        ^^
    ---------------------------------------------------------------------------------------------
    gtk/gtkspinbutton.c  error: expected identifier before numeric constant
    ---------------------------------------------------------------------------------------------
    /* Signals */
    enum
    {
      INPUT_S,                INPUT fix to -> INPUT_S
      OUTPUT,
      VALUE_CHANGED,
      CHANGE_VALUE,
      WRAPPED,
      LAST_SIGNAL
    };
    
    spinbutton_signals[INPUT_S] =
                            ^^
    g_signal_emit (spin_button, spinbutton_signals[INPUT_S], 0, &val, &return_val);
                                                        ^^
    ---------------------------------------------------------------------------------------------
    gtkroundedbox.c:229:3: error: 'Arc' redeclared as different kind of symbol
     } Arc;
       ^
    In file included from d:msysmingwi686-w64-mingw32includewindows.h:71:0,
                     from D:/MSYS/local/include/glib-2.0/glib/glib-init.h:32,
                     from D:/MSYS/local/include/glib-2.0/glib.h:30,
                     from D:/MSYS/local/include/glib-2.0/gobject/gbinding.h:28,
                     from D:/MSYS/local/include/glib-2.0/glib-object.h:23,
                     from gtkroundedboxprivate.h:21,
                     from gtkroundedbox.c:20:
    d:msysmingwi686-w64-mingw32includewingdi.h:2678:28: note: previous declaration of 'Arc' was here
       WINGDIAPI WINBOOL WINAPI Arc(HDC hdc,int x1,int y1,int x2,int y2,int x3,int y3,int x4,int y4);
    ---------------------------------------------------------------------------------------------
    gtkroundedbox.c
    } Arc_L;
    arc_path_hash (Arc_L *arc)
      return mem_hash ((gconstpointer)arc, sizeof (Arc_L));
    arc_path_equal (Arc_L *arc1,
                    Arc_L *arc2)
      Arc_L key;
      memset (&key, 0, sizeof (Arc_L));
    ---------------------------------------------------------------------------------------------
    
    ---------------------------------------------------------------------------------------------
    gtk/updateiconcache.c   ->  gtk-update-icon-cache.exe
    ---------------------------------------------------------------------------------------------
    #include <glib.h>             <-- add
    #include <glib-object.h>      <-- add
    
    int
    main (int argc, char **argv)
    {
      g_clock_win32_init ();      <-- add
      g_thread_win32_init ();     <-- add
      glib_init ();               <-- add
      gobj_init ();               <-- add
      gchar *path;
    ---------------------------------------------------------------------------------------------
    gtk/queryimmodules.c   ->  gtk-query-immodules-2.0.exe
    ---------------------------------------------------------------------------------------------
    #include <glib.h>             <-- add
    #include <glib-object.h>      <-- add
    
    int main (int argc, char **argv)
    {
      g_clock_win32_init ();      <-- add
      g_thread_win32_init ();     <-- add
      glib_init ();               <-- add
      gobj_init ();               <-- add
      char *cwd;
    ---------------------------------------------------------------------------------------------
    gtk/gtk-launch.c   ->  gtk-launch.exe
    ---------------------------------------------------------------------------------------------
    #include <glib.h>       
    #include <glib-object.h>
    
    int
    main (int argc, char *argv[])
    {
      g_clock_win32_init ();
      g_thread_win32_init ();
      glib_init ();
      gobj_init ();  
    ---------------------------------------------------------------------------------------------
    gtk/encodesymbolic.c  -> gtk-encode-symbolic-svg.exe
    #include <glib.h>       
    #include <glib-object.h>
    
    int
    main (int argc, char *argv[])
    {
      g_clock_win32_init ();
      g_thread_win32_init ();
      glib_init ();
      gobj_init ();  
    ---------------------------------------------------------------------------------------------
    gtk/gtk-builder-tool.c
    int main (int argc, const char *argv[])
    {
      g_set_prgname ("gtk-builder-tool");       fix to -> gtk_init (&argc, &argv);
      gtk_init (NULL, NULL);                    fix to -> g_set_prgname ("gtk-builder-tool");
    ---------------------------------------------------------------------------------------------
    demosgtk-demomain.c
    ---------------------------------------------------------------------------------------------
    int
    main (int argc, char **argv)
    {
      gtk_init (&argc, &argv);  <-- add
      GtkApplication *app;
    ---------------------------------------------------------------------------------------------
      
    *********************** skip the part *******************************************************
    ---------------------------------------------------------------------------------------------
    undefined reference to `IID_IShellLinkW'         -luuid
    undefined reference to `hb_icu_script_to_script' -lharfbuzz  -lharfbuzz-icu 
    undefined reference to `__gxx_personality_sj0'   -lsupc++ 
    ---------------------------------------------------------------------------------------------
    demosgtk-demomain.c
    ---------------------------------------------------------------------------------------------
    #include <glib.h>             <-- add
    #include <glib-object.h>      <-- add
    
    int
    main (int argc, char **argv)
    {
      g_clock_win32_init ();      <-- add
      g_thread_win32_init ();     <-- add
      glib_init ();               <-- add
      gobj_init ();               <-- add
      GtkWidget *window;
    ---------------------------------------------------------------------------------------------
    gtk/gtkmarshalers.c:(.text+0xc10): multiple definition of `_gtk_marshal_OBJECT__VOID'
    perf/marshalers.o:marshalers.c:(.text+0x0): first defined here
    ---------------------------------------------------------------------------------------------
    gdkmain-win32.c:(.text+0x0): multiple definition of `DllMain@12'
    gtkmain.c:(.text+0x8b0): first defined here
    ---------------------------------------------------------------------------------------------
      
    ---------------------------------------------------------------------------------------------
    tests/testmultidisplay.c: In function 'main':
    testmultidisplay.c:104:14: error: expected identifier or '(' before numeric constant
       GdkScreen *scr2 = NULL; /* Quiet GCC */
                  ^
    testmultidisplay.c:145:13: error: lvalue required as left operand of assignment
            scr2 = gdk_display_get_default_screen (dpy2);
                 ^
    testmultidisplay.c:176:26: warning: passing argument 1 of 'make_selection_dialog' makes pointer from integer without a cast [-Wint-conversion]
       make_selection_dialog (scr2, entry, entry2);
                              ^
    GdkScreen *scr2L = NULL;     scr2 fix to -> scr2L
    
    testmultidisplay.c:56:1: note: expected 'GdkScreen * {aka struct _GdkScreen *}' but argument is of
    type 'int'
     make_selection_dialog (GdkScreen * screen,
    ---------------------------------------------------------------------------------------------
    tests/testselection.c
    ---------------------------------------------------------------------------------------------
    typedef enum {
      SEL_TYPE_NONE,
      APPLE_PICT,
      ATOM_L,             ATOM   fix to -> ATOM_L
      ATOM_PAIR,
      BITMAP_L,           BITMAP fix to -> BITMAP_L
      C_STRING,
    *********************************************************************************************
    
    ---------------------------------------------------------------------------------------------
    gtkmain.c
    ---------------------------------------------------------------------------------------------
    static HMODULE gtk_dll = NULL;
    
    // BOOL WINAPI
    // DllMain (HINSTANCE hinstDLL,
    	 // DWORD     fdwReason,
    	 // LPVOID    lpvReserved)
    // {
      // switch (fdwReason)
        // {
        // case DLL_PROCESS_ATTACH:
          // gtk_dll = (HMODULE) hinstDLL;
          // break;
        // }
    
      // return TRUE;
    // }
    ---------------------------------------------------------------------------------------------
    gdkmain-win32.c
    ---------------------------------------------------------------------------------------------
    // int __stdcall
    // DllMain (HINSTANCE hinstDLL,
    	 // DWORD     dwReason,
    	 // LPVOID    reserved)
    // {
      // _gdk_dll_hinstance = hinstDLL;
    
      // return TRUE;
    // }
    ---------------------------------------------------------------------------------------------
    gdk/win32/gdkglobals-win32.c
    ---------------------------------------------------------------------------------------------
    HINSTANCE	  _gdk_dll_hinstance = NULL;
    ---------------------------------------------------------------------------------------------
    
    ---------------------------------------------------------------------------------------------
    gtkclipboard.c:(.text+0x16b8): undefined reference to `_imp__gdk_threads_unlock'
    gtkclipboard.c:(.text+0x16d1): undefined reference to `_imp__gdk_threads_lock'
    ---------------------------------------------------------------------------------------------
    gdktypes.h
    ---------------------------------------------------------------------------------------------
    #ifdef G_OS_WIN32
    #  ifdef GDK_COMPILATION
    #    define GDKVAR __declspec(dllexport)         -> __attribute__((visibility ("default")))
    #  else
    #    define GDKVAR extern __declspec(dllimport)  ->  define GDKVAR extern
    #  endif
    #else
    #  define GDKVAR extern
    #endif
    ---------------------------------------------------------------------------------------------
    gtkdebug.h
    gtkmain.h
    gtktexttypes.h
    ---------------------------------------------------------------------------------------------
    #ifdef G_OS_WIN32
    #  ifdef GDK_COMPILATION
    #    define GTKVAR __declspec(dllexport)         -> __attribute__((visibility ("default")))
    #  else
    #    define GTKVAR extern __declspec(dllimport)  ->  define GTKVAR extern
    #  endif
    #else
    #  define GTKVAR extern
    #endif
    ---------------------------------------------------------------------------------------------
    gtk/gtkmain.c
    ---------------------------------------------------------------------------------------------
    ...
    #include <cairo.h>           <--- add
    #include <epoxy/wgl.h>       <--- add
    ...
    
    void
    gtk_init (int *argc, char ***argv)
    {
      g_clock_win32_init ();     <--- add
      g_thread_win32_init ();    <--- add
      glib_init ();              <--- add
      gobj_init ();              <--- add
      cairo_mutex_init();        <--- add
      epoxy_init();              <--- add
      if (!gtk_init_check (argc, argv))
    ---------------------------------------------------------------------------------------------
    void gtk_main_do_event (GdkEvent *event)
    ...
        case GDK_DESTROY:
          /* Unexpected GDK_DESTROY from the outside, ignore for
           * child windows, handle like a GDK_DELETE for toplevels
           */
          if (!gtk_widget_get_parent (event_widget))
            {
              g_object_ref (event_widget);
              if (!gtk_widget_event (event_widget, event) &&
                  gtk_widget_get_realized (event_widget))
                gtk_widget_destroy (event_widget);
              g_object_unref (event_widget);
            }
    	  cairo_mutex_finalize(); <--- add
    	  epoxy_exit();           <--- add
          break;
    ...
    ---------------------------------------------------------------------------------------------
    In file included from d:msysmingwi686-w64-mingw32includewindows.h:72:0,
                     from D:/MSYS/local/include/glib-2.0/glib/glib-init.h:32,
                     from D:/MSYS/local/include/glib-2.0/glib.h:30,
                     from ../gdk/gdkconfig.h:13,
                     from ../gdk/gdk.h:30,
                     from gtkwin32drawprivate.h:21,
                     from gtkwin32draw.c:20:
    gtkwin32draw.c:162:3: error: expected identifier before '(' token
       EDGE_RAISED       = (EDGE_RAISED_OUTER | EDGE_RAISED_INNER),
       ^
    gtkwin32draw.c:731:0: warning: "RGB" redefined
     #define RGB(r, g, b) { (r)/255.0, (g)/255.0, (b)/255., 1.0 }
     ^
    In file included from d:msysmingwi686-w64-mingw32includewindows.h:71:0,
                     from D:/MSYS/local/include/glib-2.0/glib/glib-init.h:32,
                     from D:/MSYS/local/include/glib-2.0/glib.h:30,
                     from ../gdk/gdkconfig.h:13,
                     from ../gdk/gdk.h:30,
                     from gtkwin32drawprivate.h:21,
                     from gtkwin32draw.c:20:
    d:msysmingwi686-w64-mingw32includewingdi.h:1395:0: note: this is the location of the previous definition
     #define RGB(r,g,b) ((COLORREF)(((BYTE)(r)|((WORD)((BYTE)(g))<<8))|(((DWORD)(BYTE)(b))<<16)))
    
    EDGE_RAISED fix to -> EDGE_RAISED_L
    EDGE_SUNKEN fix to -> EDGE_SUNKEN_L
    EDGE_ETCHED fix to -> EDGE_ETCHED_L
    EDGE_BUMP   fix to -> EDGE_BUMP_L
    ---------------------------------------------------------------------------------------------
    ./.libs/libgtk-3.a(libgtk_3_la-gtkaccessibility.o):gtkaccessibility.c:(.text+0x19ba): undefined reference to `_imp__atk_misc_instance'
    ----------------------------------------------------------
    atk/atkmisc.h
    //#        define ATK_VAR extern __declspec(dllimport)
    #        define ATK_VAR extern
    ----------------------------------------------------------
    atk/config.h
    // #define _ATK_EXTERN __attribute__((visibility("default"))) __declspec(dllexport) extern
    #define _ATK_EXTERN __attribute__((visibility("default")))
    ----------------------------------------------------------
    make && make install
    ----------------------------------------------------------
    gtk/Makefile
    LIBS = * -latk-1.0 <-- add
    ---------------------------------------------------------------------------------------------
    Could not Find Dwmapi.dll Error
        Available in Windows Vista and later versions of Windows.
    ---------------------------------------------------------------------------------------------
    Searching for 'dwm'...
    gdkwin32gdkevents-win32.c(3464):    case WM_DWMCOMPOSITIONCHANGED:
    gdkwin32gdkevents-win32.c(3586):      /* TODO: pass all messages to DwmDefWindowProc() first! */
    gdkwin32gdkproperty-win32.c(423):          info.dwMajorVersion > 6 ||
    gdkwin32gdkproperty-win32.c(424):          (info.dwMajorVersion == 6 && info.dwMinorVersion >= 2))
    gdkwin32gdkscreen-win32.c(28):#include <dwmapi.h>
    gdkwin32gdkscreen-win32.c(359):  /* On Windows 8 and later, DWM (composition) is always enabled */
    gdkwin32gdkscreen-win32.c(452):      if (DwmIsCompositionEnabled (&is_composited) != S_OK)
    gdkwin32gdkwindow-win32.c(44):#include <dwmapi.h>
    gdkwin32gdkwindow-win32.c(452):  DWM_BLURBEHIND blur_behind;
    gdkwin32gdkwindow-win32.c(488):  blur_behind.dwFlags = DWM_BB_ENABLE | DWM_BB_BLURREGION;
    gdkwin32gdkwindow-win32.c(491):  call_result = DwmEnableBlurBehindWindow (thiswindow, &blur_behind);
    gdkwin32gdkwindow-win32.c(495):        G_STRLOC, "DwmEnableBlurBehindWindow", thiswindow, (guint32) call_result);
    12 occurrence(s) have been found.
    ---------------------------------------------------------------------------------------------
    gdkwin32gdkevents-win32.c(3464)
    //    case WM_DWMCOMPOSITIONCHANGED:
    //      _gdk_win32_window_enable_transparency (window);
    //      break;
    
    gdkwin32gdkproperty-win32.c(424)
    //      if (!GetVersionEx (&info) ||
    //          info.dwMajorVersion > 6 ||
    //          (info.dwMajorVersion == 6 && info.dwMinorVersion >= 2))
    //        return FALSE;
    
    gdkwin32gdkscreen-win32.c(28)
    //#include <dwmapi.h>
    
    gdkwin32gdkscreen-win32.c(452)
    //if (DwmIsCompositionEnabled (&is_composited) != S_OK)
    //  return FALSE;
    	  
    gdkwin32gdkwindow-win32.c(44)
    //#include <dwmapi.h>
    
    gdkwin32gdkwindow-win32.c(452)
    //DWM_BLURBEHIND blur_behind;
    
    gdkwin32gdkwindow-win32.c(488)
    //memset (&blur_behind, 0, sizeof (blur_behind));
    //blur_behind.dwFlags = DWM_BB_ENABLE | DWM_BB_BLURREGION;
    //blur_behind.hRgnBlur = empty_region;
    //blur_behind.fEnable = TRUE;
    //call_result = DwmEnableBlurBehindWindow (thiswindow, &blur_behind);
    
    gdkwin32gdkwindow-win32.c(495)
    //  if (!SUCCEEDED (call_result))
    //    g_warning ("%s: %s (%p) failed: %" G_GINT32_MODIFIER "x",
    //        G_STRLOC, "DwmEnableBlurBehindWindow", thiswindow, (guint32) call_result);
    
    make
    ---------------------------------------------------------------------------------------------
    SetupDiGetDevicePropertyW SETUPAPI.dll error  
        Available in Windows Vista and later versions of Windows.
    ---------------------------------------------------------------------------------------------
    gdkwin32gdkmonitor-win32.c(188)
    static gboolean
    get_device_property (HDEVINFO          device_infoset,
                         SP_DEVINFO_DATA  *device_info_data,
                         DEVPROPKEY       *property_key,
                         gpointer         *r_buffer,
                         gsize            *r_buffer_size,
                         DEVPROPTYPE      *r_property_type,
                         GError          **error)
    {
    /*
      DEVPROPTYPE property_type;
      gpointer property;
      DWORD property_size;
    
      property = NULL;
      property_size = 0;
    
      if (!SetupDiGetDevicePropertyW (device_infoset,
                                      device_info_data,
                                      property_key,
                                      &property_type,
                                      property,
                                      property_size,
                                      &property_size,
                                      0))
        {
          DWORD error_code = GetLastError ();
    
          if (error_code != ERROR_INSUFFICIENT_BUFFER)
            {
              gchar *emsg = g_win32_error_message (error_code);
              g_warning ("Failed to get device node property {" G_GUID_FORMAT "},%lu size: %s",
                         g_format_guid (&property_key->fmtid),
                         property_key->pid,
                         emsg);
              g_free (emsg);
    
              return FALSE;
            }
        }
    
      if (r_buffer)
        {
          property = g_malloc (property_size);
    
          if (!SetupDiGetDevicePropertyW (device_infoset,
                                          device_info_data,
                                          property_key,
                                          &property_type,
                                          property,
                                          property_size,
                                          &property_size,
                                          0))
            {
              DWORD error_code = GetLastError ();
    
              gchar *emsg = g_win32_error_message (error_code);
              g_warning ("Failed to get device node property {" G_GUID_FORMAT "},%lu: %s",
                         g_format_guid (&property_key->fmtid),
                         property_key->pid,
                         emsg);
              g_free (emsg);
    
              return FALSE;
            }
    
          *r_buffer = property;
        }
    
      if (r_buffer_size)
        *r_buffer_size = property_size;
    
      if (r_property_type)
        *r_property_type = property_type;  */
      return TRUE;
    }
    ---------------------------------------------------------------------------------------------
    SHCreateItemFromParsingName SHELL32.dll error
        Windows Vista [desktop apps only]
    ---------------------------------------------------------------------------------------------
    gtkgtkfilechoosernativewin32.c(371)
    //  hr = SHCreateItemFromParsingName(uri_w, 0, &IID_IShellItem, (LPVOID *) &item);
    //  if (SUCCEEDED (hr))
    //    return item;
    //  else
    //    g_warning_hr ("Can't create shell item from shortcut", hr);
    ---------------------------------------------------------------------------------------------
    D:MSYSuildlibs-2GTK_-3~1.4demosgtk-demoGTK3-D~1.EXE Missing entry: g_win32_run_session_bus@16
    
    gio/gdbusaddress.c
    ------------------------
    	  //res = CreateProcessW (rundll_path, args,
    	  //			0, 0, FALSE,
    	  //			NORMAL_PRIORITY_CLASS | CREATE_NO_WINDOW | DETACHED_PROCESS,
    	  //			0, NULL /* TODO: Should be root */,
    	  //			&si, &pi);
              hThread=CreateThread(NULL, 0, (LPTHREAD_START_ROUTINE)g_win32_run_session_bus, NULL,0,&ThreadID);
    	  if(hThread)
    	  {
    		g_print ("g_win32_run_session_bus thread run.
    ");
    	        address = read_shm (DBUS_DAEMON_ADDRESS_INFO);
    	  }
    	  else
    	  {
    		g_print ("g_win32_run_session_bus thread create false.
    ");
    	  }
    
    ---------------------------------------------------------------------------------------------
    tests/testheightforwidth.c
    typedef struct {
      const gchar *name;
      const gchar *tooltip;
      const gchar *interface_M;  <-
      GtkWidget   *window;
    } TestInterface;
    
    static void
    test_clicked (GtkWidget     *button, 
    	      TestInterface *interface_L) <-
    ---------------------------------------------------------------------------------------------
    gdkwin32gdkwindow-win32.c
    ---------------------------------------------------------------------------------------------
      /* Don't use UpdateLayeredWindow on minimized windows */
      Line 4935 API_CALL (UpdateLayeredWindow, (GDK_WINDOW_HWND (window), NULL,
      fix to 
      UpdateLayeredWindow, (GDK_WINDOW_HWND (window), NULL,
    ---------------------------------------------------------------------------------------------
    ---------------------------------------------------------------------------------------------
    *** Warning: This system cannot link to static lib archive /gdk/libgdk-win32-2.0.la.
    *** Warning: This system cannot link to static lib archive /usr/local/lib/libpangocairo-1.0.la.
    *** Warning: This system cannot link to static lib archive /usr/local/lib/libpangowin32-1.0.la.
    *** Warning: This system cannot link to static lib archive /usr/local/lib/libpangoft2-1.0.la.
    *** Warning: This system cannot link to static lib archive /usr/local/lib/libpango-1.0.la.
    *** Warning: This system cannot link to static lib archive /usr/local/lib/libgthread-2.0.la.
    *** Warning: This system cannot link to static lib archive /usr/local/lib/libatk-1.0.la.
    *** Warning: This system cannot link to static lib archive /usr/local/lib/libcairo.la.
    *** Warning: This system cannot link to static lib archive /usr/local/lib/libpixman-1.la.
    *** Warning: This system cannot link to static lib archive /usr/local/lib/libfontconfig.la.
    *** Warning: This system cannot link to static lib archive /usr/local/lib/libxml2.la.
    *** Warning: This system cannot link to static lib archive /usr/local/lib/liblzma.la.
    *** Warning: This system cannot link to static lib archive /usr/local/lib/libgdk_pixbuf-2.0.la.
    *** Warning: This system cannot link to static lib archive /usr/local/lib/libgio-2.0.la.
    *** Warning: This system cannot link to static lib archive /usr/local/lib/libgmodule-2.0.la.
    *** Warning: This system cannot link to static lib archive /usr/local/lib/libgobject-2.0.la.
    *** Warning: This system cannot link to static lib archive /usr/local/lib/libglib-2.0.la.
    *** Warning: This system cannot link to static lib archive /usr/local/lib/libffi.la.
    *** Warning: This system cannot link to static lib archive /usr/local/lib/libintl.la.
    *** Warning: This system cannot link to static lib archive /usr/local/lib/libiconv.la.
    *** Warning: This system cannot link to static lib archive /usr/local/lib/libharfbuzz-icu.la.
    *** Warning: This system cannot link to static lib archive /usr/local/lib/libharfbuzz.la.
    *** Warning: This system cannot link to static lib archive /usr/local/lib/libfreetype.la.
    *** Warning: This system cannot link to static lib archive /usr/local/lib/libpng16.la.
    *** Warning: This system cannot link to static lib archive d:/msys/mingw/lib/libsupc++.la.
    ---------------------------------------------------------------------------------------------
    


    Conclusion: in XP system, the performance of gtk3 is very poor.
  • 相关阅读:
    第13章 TCP/IP和网络编程
    实验二测试
    实验四 Web服务器1socket编程
    thread同步测试
    团队作业(五):冲刺总结——第四天
    111
    递归和数学归纳法
    Nodejs中cluster模块的多进程共享数据问题
    JavaScript写类方式(一)——工厂方式
    JavaScript中的shift()和pop()函数
  • 原文地址:https://www.cnblogs.com/nlsoft/p/5767132.html
Copyright © 2020-2023  润新知