RE: Gtk+ 3.0 and MS Windows



Fan:

I downloaded Gtk+ 3.0.5, as well as these prerequisites 
http://ftp.gnome.org/pub/gnome/binaries/win32/gtk+/2.22/gtk+-bundle_2.22.1-20101227_win32.zip
http://ftp.gnome.org/pub/gnome/binaries/win32/glib/2.28/glib_2.28.1-1_win32.zip
http://ftp.gnome.org/pub/gnome/binaries/win32/glib/2.28/glib-dev_2.28.1-1_win32.zip

I unpacked tarball and did not run ./configure or anything from msys. I opened solution in MS VC++ 2008 Express and I had to change few things in gtk+.vsprops namely:
GlibEtcInstallRoot
ForcedIncludeFiles="msvc_recommended_pragmas.h"
$(GlibEtcInstallRoot)\include\GdkPixbuf-2.0  -> $(GlibEtcInstallRoot)\include\Gdk-Pixbuf-2.0

And again gdk-win32 project compiles nice. However gdk build now gives this:

Linking...
   Creating library C:\workspace\gtk+-3.0.5\build\win32\vs9\Debug\Win32\bin\gdk-win32-3.0.lib and object C:\workspace\gtk+-3.0.5\build\win32\vs9\Debug\Win32\bin\gdk-win32-3.0.exp
gdkwindow.obj : error LNK2019: unresolved external symbol __imp__cairo_gobject_surface_get_type referenced in function _gdk_window_class_init
C:\workspace\gtk+-3.0.5\build\win32\vs9\Debug\Win32\bin\gdk-win32-3-vs9.dll : fatal error LNK1120: 1 unresolved externals
Build log was saved at "file://C:\workspace\gtk+-3.0.5\build\win32\vs9\Debug\Win32\obj\BuildLog.htm"


I had to create libcairo-gobject.lib with the following

-------------8<----------------------------
EXPORTS
cairo_gobject_context_get_type
cairo_gobject_pattern_get_type
cairo_gobject_surface_get_type
LIBRARY libcairo-gobject-2.dll
-------------8<----------------------------

and add it to gtk+.vsprop in linking section.

Bottom line: I managed to build gtk+ 3.0! However once I saw main window of gtk-demo.exe appearing, the program crashed:(  Dependencies bundle has not only outdated  glib, but also cairo-related dev files (at least missing dot def and dot lib).

I'll debug it later.

P.S. Norton Security Suite is not fun! Its Sonar system silently kept deleting gtk-demo.exe after I tried to launch it. It was quite weird to see it disappearing:-) I had to disable it.

Mikhail


-----Original Message-----
From: gtk-list-bounces gnome org [mailto:gtk-list-bounces gnome org] On Behalf Of Mikhail Titov
Sent: Friday, March 25, 2011 8:40 AM
To: 'Fan Chun-wei'
Cc: gtk-list gnome org
Subject: RE: Gtk+ 3.0 and MS Windows

Fan:

I tried gtk+ 3.0.4. All most recent dependencies I got in a binary form somewhere from gnome ftp. You may be right as I did only `make distclean` and reran ./configure when I stuck with previous problems with generating enums headers. Though I did remove timestamp files manually. I'm not sure if `make distclean` was enough. I'll try a clean MinGW as well as I feel like I have a bit outdated environment anyway.

I want to give a try to OpenSUSE binaries before continuing attempts to build on my own:-)

Mikhail


-----Original Message-----
From: Fan Chun-wei [mailto:fanc999 yahoo com tw]
Sent: Friday, March 25, 2011 6:11 AM
To: Mikhail Titov
Cc: gtk-list gnome org
Subject: RE: Gtk+ 3.0 and MS Windows

Hi Mikhail,

Can I know which version of GTK+ are you using?  You may want to try building from a clean source tree that is not touched by MinGW/MSYS (i.e. 
extract from the release tarball, and build from it directly with VS).

I was able to build up to 3.0.4 without problems, and it seems 3.0.5 did not change that much to cause any problems of that sort (I didn't have time to build 3.0.5 yet)

God Bless,
-Fan, Chun-wei


--- 11/3/25 (五),Mikhail Titov 寫道:

> Fan:
> 
> If I try to use experimental MS VC++ solution/projects,
> gdk-win32 dll gets built correctly. However when I try to build gdk 
> project I get errors like following:
1>Linking...
1>gdk.def : error LNK2001: unresolved external symbol 
1>gdk_axis_use_get_type gdk.def : error LNK2001: unresolved external 
1>symbol gdk_byte_order_get_type



      

_______________________________________________
gtk-list mailing list
gtk-list gnome org
http://mail.gnome.org/mailman/listinfo/gtk-list



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]