Ethereal-dev: Re: [Ethereal-dev] Problems compiling on Win32 using Glib2 and GTK for Glib2

Note: This archive is from the project's previous web site, ethereal.com. This list is no longer active.

From: Tomas Kukosa <tomas.kukosa@xxxxxxxxxxx>
Date: Mon, 04 Aug 2003 15:29:07 +0200
My working config.nmake is attached.

The next step is to make right glib and gtk directories.
1) Make directory referenced as GLIB_DIR (e.g. G:\Ethereal\glib-2.0)
2) Copy directories "include" and "lib" from glib-dev-2.2.1.zip into
$(GLIB_DIR)
3) Make directory referenced as GTK_DIR (e.g. G:\Ethereal\gtk+-1.3)
4) Copy directories "gdk" and "gtk" from
gtk+-dev-1.3.0-20030115.zip/include into $(GTK_DIR)
5) Copy and rename gtk+-dev-1.3.0-20030115.zip/lib/gtk.lib into
$(GTK_DIR)/gtk/gtk-1.3.lib
6) Copy and rename gtk+-dev-1.3.0-20030115.zip/lib/gdk.lib into
$(GTK_DIR)/gdk/gdk-1.3.lib 
7) Copy gtk+-dev-1.3.0-20030115.zip/lib/gtk+/include/gdkconfig.h into
$(GTK_DIR)/gdk/gdkconfig.h

The result should be following:
>tree /A G:\Ethereal\glib-2.0
G:\ETHEREAL\GLIB-2.0
+---include
|   \---glib-2.0
|       +---glib
|       \---gobject
\---lib
    +---glib-2.0
    |   \---include
    \---pkgconfig

>tree /A G:\Ethereal\gtk+-1.3
G:\ETHEREAL\GTK+-1.3
+---gdk
\---gtk


Regards,
  Tom

Andreas Sikkema wrote:
> 
> > On Sun, Aug 03, 2003 at 10:58:34AM +0200, Lars Roland wrote:
> >> The last patch for config.nmake wasn't checked in. Look at
> >> http://www.ethereal.com/lists/ethereal-dev/200307/msg00264.html
> >
> > I've checked that in, but without the change to use a different GLib
> > version.
> 
> I needed the changes to config.nmake in that message to get the glib2.0
> and gtk1.3 combo to work
> 
> --
> Andreas
> 
> _______________________________________________
> Ethereal-dev mailing list
> Ethereal-dev@xxxxxxxxxxxx
> http://www.ethereal.com/mailman/listinfo/ethereal-dev

--
# $Id: config.nmake,v 1.54 2003/07/23 02:06:24 gerald Exp $

VERSION=0.9.14
#
# This should be comma-separated, not dot-separated, as per Graham
# Bloice's message in
#
#	http://www.ethereal.com/lists/ethereal-dev/200303/msg00283.html
#
# "The RC_VERSION variable in config.nmake should be comma separated. 
# This allows the resources to be built correctly and the version
# number to be correctly displayed in the explorer properties dialog
# for the executables, and XP's tooltip, rather than 0.0.0.0."
#
RC_VERSION=0,9,14
WTAP_VERSION=0.0

GTK_VERSION=1.3
GLIB_VERSION=2.0

#
# This presumes that GLib 1.3 developer's packages put header files and
# libraries directly in a "glib" directory and GTK+ 1.3 packages put
# header files and libraries directly in a "gtk+" directory, while GLib
# 2.x developer's packages put header files in an "include\glib-{version}"
# directory and libraries in a "lib\glib-{version}" directory, and GTK+
# 2.x developer's packages put header files in an "include\gtk-{version}"
# directory and libraries in a "lib\gtk-{version}" directory.
#
# If the version of a developer's package is 1.3, set the appropriate
# _DIR variable to the "glib" or "gtk+" directory; if it's 2.x, set it
# to the directory in which the "include" and "lib" directories reside.
#
GLIB_DIR=G:\Ethereal\glib-2.0
GTK_DIR=G:\Ethereal\gtk+-1.3

ZLIB_DIR=G:\Ethereal\zlib-1.1.4
PCAP_DIR=G:\Ethereal\libpcap30
NET_SNMP_DIR=G:\Ethereal\net-snmp-5.0.6
ADNS_DIR=G:\Ethereal\adns-1.0-win32-01 

COMMON_FILES_GNU=C:\cygwin\bin

LOCAL_CFLAGS=-Zi
LOCAL_LDFLAGS=/DEBUG

# Set PDB_FILE according to your VC++ version 
PDB_FILE=vc*.pdb

# Set path if you need to find some binary
PATH=C:\cygwin\bin;$(PATH) 

SH=bash
PERL=perl
POD2MAN=pod2man
POD2HTML=pod2html
PYTHON="C:\Python\python.exe"
LEX=flex
YACC=bison

# Set YACC_OPTS if cygnus bison can't find template file.
#YACC_OPTS=-S t:\w32-ix86\cygnus\cygwin-b20\share\bison.simple 

# To build the installer
MAKENSIS="C:/program files/nsis/makensis.exe"

#
# You should not have to change anything below this comment.
# If you do, it's a deficiency in the Makefile.nmake files;
# either tell ethereal-dev@xxxxxxxxxxxx about it, including
# details of why you had to change it, or fix config.nmake
# and any Makefile.nmake files that need to be changed, and
# send us the patches, along with details of why the change
# was necessary.
#
!IF "$(GLIB_VERSION)" == "1.3"
GLIB_CFLAGS=/I$(GLIB_DIR) /I$(GLIB_DIR)\gmodule
GLIB_LIBS=$(GLIB_DIR)\glib-$(GLIB_VERSION).lib \
	$(GLIB_DIR)\gmodule\gmodule-$(GLIB_VERSION).lib
!ELSE
GLIB_CFLAGS=/I$(GLIB_DIR)\include\glib-$(GLIB_VERSION) \
	/I$(GLIB_DIR)\lib\glib-$(GLIB_VERSION)\include
GLIB_LIBS=$(GLIB_DIR)\lib\glib-$(GLIB_VERSION).lib \
	$(GLIB_DIR)\lib\gmodule-$(GLIB_VERSION).lib \
	$(GLIB_DIR)\lib\gobject-$(GLIB_VERSION).lib
!ENDIF
!IF "$(GTK_VERSION)" == "1.3"
GTK_CFLAGS=$(GLIB_CFLAGS) /I$(GTK_DIR) /I$(GTK_DIR)\gdk
GTK_LIBS=$(GTK_DIR)\gtk\gtk-$(GTK_VERSION).lib \
	$(GTK_DIR)\gdk\gdk-$(GTK_VERSION).lib \
	$(GLIB_LIBS)
!ELSE
GTK_CFLAGS=$(GLIB_CFLAGS) /I$(GTK_DIR)\include\gtk-$(GTK_VERSION) \
	/I$(GTK_DIR)\lib\gtk-$(GTK_VERSION)\include \
	/I$(GTK_DIR)\include\atk-1.0 \
	/I$(GTK_DIR)\include\pango-1.0
GTK_LIBS=$(GTK_DIR)\lib\gtk-win32-$(GTK_VERSION).lib \
	$(GTK_DIR)\lib\gdk-win32-$(GTK_VERSION).lib \
	$(GTK_DIR)\lib\pango-1.0.lib \
	$(GLIB_LIBS)
!ENDIF

!IFDEF ADNS_DIR
ADNS_CFLAGS=/I$(ADNS_DIR)\src /I$(ADNS_DIR)\adns_win32
ADNS_LIBS=$(ADNS_DIR)\adns_win32\lib\adns_dll.lib
# Nmake uses carets to escape special characters
ADNS_CONFIG=^#define HAVE_GNU_ADNS 1
!else
ADNS_CFLAGS=
ADNS_LIBS=
ADNS_CONFIG=
!ENDIF