Ethereal-dev: Re: [Ethereal-dev] Unable to do nmake -f makefile.nmake packaging on SVN tarball
Anders Broman (AL/EAB) wrote:
Hi,
when I try to do packaging on the files in the SVN tarball I get:
Microsoft (R) Program Maintenance Utility Version 6.00.8168.0
Copyright (C) Microsoft Corp 1988-1998. All rights reserved.
link -dll /out:acn.dll /NOLOGO /INCREMENTAL:no /MACHINE:I386 /DEBUG pack
et-acn.obj ..\..\epan\libethereal.lib C:\ethereal-win32-libs\glib\lib\glib-2.0.
lib C:\ethereal-win32-libs\glib\lib\gmodule-2.0.lib C:\ethereal-win32-libs\gli
b\lib\gobject-2.0.lib
'link' is not recognized as an internal or external command,
operable program or batch file.
NMAKE : fatal error U1077: 'link' : return code '0x1'
Stop.
NMAKE : fatal error U1077: '"C:\Program Files\Microsoft Visual Studio\VC98\Bin\N
MAKE.EXE"' : return code '0x2'
Stop.
NMAKE : fatal error U1077: '"C:\Program Files\Microsoft Visual Studio\VC98\Bin\N
MAKE.EXE"' : return code '0x2'
Stop.
NMAKE : fatal error U1077: '"C:\Program Files\Microsoft Visual Studio\VC98\Bin\N
MAKE.EXE"' : return code '0x2'
Stop.
But compiling and running works - ideas any one?
Brg
Anders
_______________________________________________
Ethereal-dev mailing list
Ethereal-dev@xxxxxxxxxxxx
http://www.ethereal.com/mailman/listinfo/ethereal-dev
I have had the same problems and found out that the problem lies in the
path being too long.
I ran "nmake -f makefile.nmake /p" and found this:
PATH = $(PCRE_DIR)\bin;$(PATH)
$(ADNS_DIR)\adns_win32\lib;$(PATH)
$(ZLIB_DIR);$(PATH)
$(GLIB_DIR)\bin;$(GETTEXT_DIR)\bin;$(ICONV_DIR)\bin;$(PATH)
$(PATH);c:\cygwin\bin
C:\ethereal-win32-libs\pcre-6.3\bin;C:\ethereal-win32-libs\adns-1.0-win32-04\adns_win32\lib;C:\ethereal-win32-libs\zlib123-dll;C:\ethereal-win32-libs\glib\bin;C:\ethereal-win32-libs\gettext-runtime-0.13.1\bin;C:\ethereal-win32-libs\libiconv-1.9.1.bin.woe32\bin;C:\ethereal-win32-libs\pcre-6.3\bin;C:\ethereal-win32-libs\adns-1.0-win32-04\adns_win32\lib;C:\ethereal-win32-libs\zlib123-dll;C:\ethereal-win32-libs\glib\bin;C:\ethereal-win32-libs\gettext-runtime-0.13.1\bin;C:\ethereal-win32-libs\libiconv-1.9.1.bin.woe32\bin;C:\PROGRA~1\MICROS~3\Common\msdev98\BIN;C:\PROGRA~1\MICROS~3\VC98\BIN;c:\winnt\system32;c:\cygwin\bin;c:\cygwin\bin
This means that whatever PATH contents one had before starting the
build, that PATH is added to the new PATH variable 5 additional times
instead of 1.
I have made changes (supplied) to config.nmake that takes care of this
problem. Please consider it to be checked-in into SVN.
/ Peter
Index: C:/ethereal-win32-libs/config.nmake
===================================================================
--- C:/ethereal-win32-libs/config.nmake (revision 15780)
+++ C:/ethereal-win32-libs/config.nmake (working copy)
@@ -156,11 +156,11 @@
# Set PDB_FILE according to your VC++ version
PDB_FILE=vc*.pdb
-# add cygwin binaries to the path
-PATH=$(PATH);c:\cygwin\bin
+# Set up the path to the cygwin binaries
+CYGWIN_PATH=c:\cygwin\bin
-# add some required DLLs to the path
-PATH=$(GLIB_DIR)\bin;$(GETTEXT_DIR)\bin;$(ICONV_DIR)\bin;$(PATH)
+# Set up the path to some required DLLs
+DLL_PATH=$(GLIB_DIR)\bin;$(GETTEXT_DIR)\bin;$(ICONV_DIR)\bin
# Set the following commands to find the tools.
@@ -299,7 +299,7 @@
!ENDIF
!IFDEF ZLIB_DIR
-PATH=$(ZLIB_DIR);$(PATH)
+ZLIB_PATH=$(ZLIB_DIR)
ZLIB_CFLAGS=/I$(ZLIB_DIR)\include
ZLIB_LIBS=$(ZLIB_DIR)\lib\zdll.lib
# Nmake uses carets to escape special characters
@@ -311,7 +311,7 @@
!ENDIF
!IFDEF ADNS_DIR
-PATH=$(ADNS_DIR)\adns_win32\lib;$(PATH)
+ADNS_PATH=$(ADNS_DIR)\adns_win32\lib
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
@@ -323,7 +323,7 @@
!ENDIF
!IFDEF PCRE_DIR
-PATH=$(PCRE_DIR)\bin;$(PATH)
+PCRE_PATH=$(PCRE_DIR)\bin
PCRE_CFLAGS=/I$(PCRE_DIR)\include
PCRE_LIBS=$(PCRE_DIR)\lib\pcre.lib
# Nmake uses carets to escape special characters
@@ -350,3 +350,6 @@
!ELSE
LIBETHEREAL_CONFIG=
!ENDIF
+
+# Construct the path
+PATH=$(CYGWIN_PATH);$(DLL_PATH);$(ZLIB_PATH);$(ADNS_PATH);$(PATH)
\ No newline at end of file