Re: Problems with Compile GTK 2.0 (1.3.6) under windows



At 12:24 13.08.01 -0400, Xuedong Zhang wrote:
>I saw similar questions on gtk-list but no answers, I also search the web
>and didn't find answers, I wish this is the right place to ask such
>questions:
>
>When I compile the files, the compiler ask me for libintl.h
>
You may want to read the file README.win32 which is availble in CVS
and should also be in the tar.gz distributions as well.
 
>Anyone know where is this file for win32?
>
The one file doesn't solve it. There are much more dependencies to be
resolved to compile CVS head (or 1.3.6) under windoze. Currently you
should prefer CVS head - if any of those _developer_ versions - because
most of the time there are more bugs squashed than slipping in ...
 
But first you may want to read and understand the short
readme, which is not the same as the one mentioned above,
but someday may be merged.

	Hans
Building Gtk+ and friends with MSVC directly from CVS
=====================================================

Build Environment
=================
This document describes the build with the Microsoft VC++ compiler.
All these makefiles are for the command line build with nmake.
If you want to use the VC-UI you can simply create wrapper .dsp
makefiles (read the VC docs to do so).

Some modules may require PERL to auto-generate files. The goal
(at least mine) is to not require any more tools.

Build with:

nmake -f makefile.msc
  or
nmake -f makefile.msc DEBUG=1


Required libraries (not build from cvs)
==================
  libintl (gnu-intl), libiconv
  libtiff, libpng, zlib, libjpeg

are available pre-built from tml's website http://www.iki.fi/~tml/win32


Special Files
=============
	config.h.win32.in : @XXX_MAJOR_VERSION@ needs to be replaced by
the current version/build number. The resulting file is to be saved
as 'config.h.win32'. This should be automatically done if a package
gets build on the Unix platform.

	makefile.msc.in : @XXX_MAJOR_VERSION@ to be replaced. Save as
makefile.msc.

	<module>.def : every function which should be used from the outside of
a dll needs to be marked for 'export'. It is common that one needs to change 
these files after some api changes occured. If there are variables to be
exported another mechanism is needed, like :

	#ifdef G_OS_WIN32
	#  ifdef GDK_COMPILATION
	#    define GDKVAR __declspec(dllexport)
	#  else
	#    define GDKVAR extern __declspec(dllimport)
	#  endif
	#else
	#  define GDKVAR extern
	#endif



Directory Structure
===================
all modules should be build in a common directory tree otherwise you 
need to adapt the file 'module.defs'. They are listed here in increasing
depemdemcies order.

<common rootdir without spaces>
  |
  +- build
  |   +- win32
  |       .\module.defs : defines (relative) locations of the headers and libs
  |                       and version numbers to be include in dll names
  |       .\make.msc    : include by almost every 'makefile.msc'
  |
  +- glib
  |   | .\readme.win32  : more information how to build
  |   | .\glibconfig.h.win32.in : similar to config.h.win32.in
  |   | .\makefile.msc  : master makefile, sub dir makefiles should work 
  |   |
  |   +- glib
  |   +- gmodule
  |   +- gthread        : does _not_ depend on pthread anymore
  |   +- gobject
  |
  +- pango
  |   +- pango          : 'native' build does not require extra libs and
  |   |                 includes the minimal required text renderer
  |   |                 (there is also a currently unmaintained FreeType2 
  |   |                 based implementation for win32)
  |   +- modules (not yet build)
  |
  +- atk
  |   +- atk
  |       .\makefile.msc : build here
  |
  +- gtk+
  |   | .\config.h.win32 : for all the above
  |   |
  |   +- gdk-pixbuf
  |   |   .\gdk-pixbuf-io-include.h : #define INCLUDE_png etc. to create
  |   |                 for all formats to be include in the Dll. Extra
  |   |                 Dll for single formats not used to simplify 
  |   |                 installation
  |   |
  |   +- gdk
  |   |   | .\makefile.msc : some auto-generation is needed to build in the
  |   |   |             in the subdirectory 
  |   |   +- win32
  |   |
  |   +- gtk

  |
  +- gimp
  |   .\makefile.msc    : master makefile to build The Gimp. The makefiles
  |                     from the sub dirs hould work stand alone, but than
  |                     the user needs to know the build order

  |
  +- dia
      +- lib
      +- app
      +- objects
      +- plug-ins
          +- python

-- Hans Breuer <hans breuer org>
-------- Hans "at" Breuer "dot" Org -----------
Tell me what you need, and I'll tell you how to 
get along without it.                -- Dilbert


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