lihb wrote:
> When i compile NSS 3.11.2,
> 
> i set environment variables:
> NS_USE_GCC=1
> configure well other.
> use command:
> cd mozilla/security/nss (or, on Windows, cd mozilla\security\nss)
> gmake nss_build_all
> The Error Log:

> f:\vc8-moztools\bin\gmake.exe[1]: Leaving directory 
> `f:/openssl/NSS/mozilla/security/coreconf'
> nsinstall -D ../../nsprpub/WINNT5.1_gcc_DBG.OBJD
> cd ../../nsprpub/WINNT5.1_gcc_DBG.OBJD ; \
> CC=gcc CXX=g++ sh ../configure \
> --enable-debug-rtl \
> --with-dist-prefix='$(topsrcdir)/../dist/WINNT5.1_gcc_DBG.OBJD' \
> --with-dist-includedir='$(topsrcdir)/../dist/WINNT5.1_gcc_DBG.OBJD/include'
> f:\vc8-moztools\bin\gmake.exe: *** 
> [../../nsprpub/WINNT5.1_gcc_DBG.OBJD/config.status] Error -1073741819

I don't know what that error is, but I offer this suggestion:
define another environment variable: CONFIG_SHELL
define it to be the DOS-style path of your bourne/korn/POSIX style shell
program.  That may fix it. (no guarantees)

> --------------------------------------------------------------------------------
> If i don't set environment variables:
> NS_USE_GCC=1
> The Log Error:
> cl -FoWINNT5.1_DBG.OBJD/db.obj -c -Od -Z7 -MDd -W3 -nologo -GT -DXP_PC
> -DDEBUG D_DEBUG -UNDEBUG -DDEBUG_lihb -DWIN32 -D_WINDOWS -D_X86_ -DWINNT
> -DSTDC_HEADERS -DHAVE_STRERROR -DHAVE_SNPRINTF -DMEMMOVE
> -D__DBINTERFACE_PRIVATE  -I../../../dist/WINNT5.1_DBG.OBJD/include
> -I../../../dist/public/dbm -I../../../dist/private/dbm -I../../../dbm/include
>  /cygdrive/f/openssl/NSS/mozilla/security/dbm/src/../../../dbm/src/db.c

NSS in an openssl directory ???

> cl : Command line warning D9002 : ignoring unknown option 
> '/cygdrive/f/openssl/NSS/mozilla/security/dbm/src/../../../dbm/src/db.c'

> Why? 

Programs that are part of the cygwin family of Unix-like commands
understand path names of the form /cygdrive/<letter>/<path>  and they
internally treat them like DOS path names of the form <letter>:/<path>
so that (e.g.) /cygdrive/f/openssl is to cygwin tools as f:/openssl is to
DOS and Windows tools.

But AFAIK only cygwin programs understand that cygdrive syntax.  Microsoft
programs and other programs written for Windows do not.  cl certainly does
not.  Your gmake or shell invoked cl using the cygdrive style path names,
and cl didn't understand them.

The first one of your two builds above used the DOS/Windows style path names
with f:/ and the second of your builds used the cygdrive style path names.
If you can get cygwin to emit DOS-style path names, then cl will work with it.

There have been reports that the latest version of cygwin no longer
supports DOS style path names, and only supports cygdrive style path names.
If those reports are true, then cygwin can no longer be used with cl, AFAIK,
or with most DOS command line programs, none of which understand /cygdrive.
I think that's very unfortunate for cygwin users, and I think cygwin users
should demand a return of the DOS-style path support.

Good luck with cygwin.

-- 
Nelson B
_______________________________________________
dev-tech-crypto mailing list
[email protected]
https://lists.mozilla.org/listinfo/dev-tech-crypto

Reply via email to