Problems with deprecated kbhit() under MS VC/C++ V8.0 (Visual Studio 2005)

classic Classic list List threaded Threaded
10 messages Options
Reply | Threaded
Open this post in threaded view
|

Problems with deprecated kbhit() under MS VC/C++ V8.0 (Visual Studio 2005)

Daniel Maag
Hi,
I am trying to compile OpenSSL V0.9.8a.
Visual Studio 2005 has  several functions deprecated
(read,write,fileno....).

I have replaced the deprecated function with the new one( read()->_read() )
Anything is working fine with one exception kbhit().

I've got the following 'error' codes:

.\apps\s_server.c(1276) : error C2220: warning treated as error - no
'object' file generated
.\apps\s_server.c(1276) : warning C4996: 'kbhit' was declared deprecated
        C:\Programme\Microsoft Visual Studio 8\VC\INCLUDE\conio.h(147) : see
declaration of 'kbhit'
        Message: 'The POSIX name for this item is deprecated. Instead, use
the ISO C++ conformant name: _kbhit. See online help for details.'
.\apps\s_server.c(1277) : warning C4996: 'kbhit' was declared deprecated
        C:\Programme\Microsoft Visual Studio 8\VC\INCLUDE\conio.h(147) : see
declaration of 'kbhit'
        Message: 'The POSIX name for this item is deprecated. Instead, use
the ISO C++ conformant name: _kbhit. See online help for details.'
NMAKE : fatal error U1077: '"C:\Programme\Microsoft Visual Studio
8\VC\BIN\cl.EXE"' : return code '0x2'
Stop.


The conio.h has the following entries for kbhit():

_CRTIMP int __cdecl _kbhit(void);
CRT_NONSTDC_DEPRECATE(_kbhit) _CRTIMP __checkReturn int __cdecl kbhit(void);


The content of s_server.c on line 1276... :

if((i < 0) || (!i && ! _kbhit() ) )continue;
if( _kbhit() )
    read_from_terminal = 1;


In the source is _kbhit() used not the old kbhit().
But the compiler complain the use kbhit() in the error message.
It seems the compiler does not use the new _kbhit().

What's the problem?
Any ideas?

I've found a workaround and redefine the old kbhit() as not deprecated in
conio.h, but that's nasty. I am looking for a 'real' solution.


Regards

Daniel


--
10 GB Mailbox, 100 FreeSMS/Monat http://www.gmx.net/de/go/topmail
+++ GMX - die erste Adresse für Mail, Message, More +++
______________________________________________________________________
OpenSSL Project                                 http://www.openssl.org
User Support Mailing List                    [hidden email]
Automated List Manager                           [hidden email]
Reply | Threaded
Open this post in threaded view
|

Re: Problems with deprecated kbhit() under MS VC/C++ V8.0 (Visual Studio 2005)

Duane Storey
You really should use the _<name> functions in portable code.. _ is reserved and typically implies non-portable, platform specific code.. 

On 2/14/06, Daniel Maag <[hidden email]> wrote:
Hi,
I am trying to compile OpenSSL V0.9.8a.
Visual Studio 2005 has  several functions deprecated
(read,write,fileno....).

I have replaced the deprecated function with the new one( read()->_read() )
Anything is working fine with one exception kbhit().

I've got the following 'error' codes:

.\apps\s_server.c(1276) : error C2220: warning treated as error - no
'object' file generated
.\apps\s_server.c(1276) : warning C4996: 'kbhit' was declared deprecated
        C:\Programme\Microsoft Visual Studio 8\VC\INCLUDE\conio.h(147) : see
declaration of 'kbhit'
        Message: 'The POSIX name for this item is deprecated. Instead, use
the ISO C++ conformant name: _kbhit. See online help for details.'
.\apps\s_server.c(1277) : warning C4996: 'kbhit' was declared deprecated
        C:\Programme\Microsoft Visual Studio 8\VC\INCLUDE\conio.h(147) : see
declaration of 'kbhit'
        Message: 'The POSIX name for this item is deprecated. Instead, use
the ISO C++ conformant name: _kbhit. See online help for details.'
NMAKE : fatal error U1077: '"C:\Programme\Microsoft Visual Studio
8\VC\BIN\cl.EXE"' : return code '0x2'
Stop.


The conio.h has the following entries for kbhit():

_CRTIMP int __cdecl _kbhit(void);
CRT_NONSTDC_DEPRECATE(_kbhit) _CRTIMP __checkReturn int __cdecl kbhit(void);


The content of s_server.c on line 1276... :

if((i < 0) || (!i && ! _kbhit() ) )continue;
if( _kbhit() )
    read_from_terminal = 1;


In the source is _kbhit() used not the old kbhit().
But the compiler complain the use kbhit() in the error message.
It seems the compiler does not use the new _kbhit().

What's the problem?
Any ideas?

I've found a workaround and redefine the old kbhit() as not deprecated in
conio.h, but that's nasty. I am looking for a 'real' solution.


Regards

Daniel


--
10 GB Mailbox, 100 FreeSMS/Monat http://www.gmx.net/de/go/topmail
+++ GMX - die erste Adresse für Mail, Message, More +++
______________________________________________________________________
OpenSSL Project                                 http://www.openssl.org
User Support Mailing List                     [hidden email]
Automated List Manager                           [hidden email]

Reply | Threaded
Open this post in threaded view
|

Re: Problems with deprecated kbhit() under MS VC/C++ V8.0 (Visual Studio 2005)

wrowe
In reply to this post by Daniel Maag
Daniel Maag wrote:
> Hi,
> I am trying to compile OpenSSL V0.9.8a.
> Visual Studio 2005 has  several functions deprecated
> (read,write,fileno....).

Honestly, I don't believe that OpenSSL should waste cycles to support any
compiler that deliberate moves away from posix.  Fairly certain it's MS's
goal to move as far away from building open source as they can without
pissing off commercial developer/users enough to move to alternate compilers
(which don't necessarily keep up with every latest and greatest hooks into
the MS API).  Just my 2c.

[FYI I understand the behavior varied in multiple versions of the beta into
the final release.]

You might refer to the cl flags to enable the 'deprecated' posix standard
for C; the ISO C++ standard doesn't apply to C language code, in spite of all
the dreamy //thoughts Microsoft has on C language parsing.

Bill

______________________________________________________________________
OpenSSL Project                                 http://www.openssl.org
User Support Mailing List                    [hidden email]
Automated List Manager                           [hidden email]
Reply | Threaded
Open this post in threaded view
|

Re: Problems with deprecated kbhit() under MS VC/C++ V8.0 (Visual Studio 2005)

Dr. Stephen Henson
In reply to this post by Daniel Maag
On Wed, Feb 15, 2006, Daniel Maag wrote:

> Hi,
> I am trying to compile OpenSSL V0.9.8a.
> Visual Studio 2005 has  several functions deprecated
> (read,write,fileno....).
>
> I have replaced the deprecated function with the new one( read()->_read() )
> Anything is working fine with one exception kbhit().
>

Before doing that you should have tried the latest snapshots. This issue has
been resolved in those.

Steve.
--
Dr Stephen N. Henson. Email, S/MIME and PGP keys: see homepage
OpenSSL project core developer and freelance consultant.
Funding needed! Details on homepage.
Homepage: http://www.drh-consultancy.demon.co.uk
______________________________________________________________________
OpenSSL Project                                 http://www.openssl.org
User Support Mailing List                    [hidden email]
Automated List Manager                           [hidden email]
Reply | Threaded
Open this post in threaded view
|

Re: Problems with deprecated kbhit() under MS VC/C++ V8.0 (Visual Studio 2005)

Kyle Hamilton
...aaaand really stupid question, how do you configure the latest
stable OpenSSL 0.9.8 (20060215) snapshot for win32?  There is no
opensslconf.h file (except in the MacOS directory), and nmake
complains that it doesn't know how to make it.

-Kyle H

On 2/15/06, Dr. Stephen Henson <[hidden email]> wrote:

> On Wed, Feb 15, 2006, Daniel Maag wrote:
>
> > Hi,
> > I am trying to compile OpenSSL V0.9.8a.
> > Visual Studio 2005 has  several functions deprecated
> > (read,write,fileno....).
> >
> > I have replaced the deprecated function with the new one( read()->_read() )
> > Anything is working fine with one exception kbhit().
> >
>
> Before doing that you should have tried the latest snapshots. This issue has
> been resolved in those.
>
> Steve.
> --
> Dr Stephen N. Henson. Email, S/MIME and PGP keys: see homepage
> OpenSSL project core developer and freelance consultant.
> Funding needed! Details on homepage.
> Homepage: http://www.drh-consultancy.demon.co.uk
> ______________________________________________________________________
> OpenSSL Project                                 http://www.openssl.org
> User Support Mailing List                    [hidden email]
> Automated List Manager                           [hidden email]
>
______________________________________________________________________
OpenSSL Project                                 http://www.openssl.org
User Support Mailing List                    [hidden email]
Automated List Manager                           [hidden email]
Reply | Threaded
Open this post in threaded view
|

Re: Problems with deprecated kbhit() under MS VC/C++ V8.0 (Visual Studio 2005)

Dr. Stephen Henson
On Wed, Feb 15, 2006, Kyle Hamilton wrote:

> ...aaaand really stupid question, how do you configure the latest
> stable OpenSSL 0.9.8 (20060215) snapshot for win32?  There is no
> opensslconf.h file (except in the MacOS directory), and nmake
> complains that it doesn't know how to make it.
>

As always following the instructions in INSTALL.W32.

Steve.
--
Dr Stephen N. Henson. Email, S/MIME and PGP keys: see homepage
OpenSSL project core developer and freelance consultant.
Funding needed! Details on homepage.
Homepage: http://www.drh-consultancy.demon.co.uk
______________________________________________________________________
OpenSSL Project                                 http://www.openssl.org
User Support Mailing List                    [hidden email]
Automated List Manager                           [hidden email]
Reply | Threaded
Open this post in threaded view
|

Re: Problems with deprecated kbhit() under MS VC/C++ V8.0 (Visual Studio 2005)

Kyle Hamilton
I did.  It mentioned nothing about this problem.

I have Activestate Perl v5.8.7 installed, and nasm in the PATH.

I ran ms\do_nasm.bat, as specified in INSTALL.W32.

I then ran nmake -f ms\ntdll.mak, as specified in INSTALL.W32.

C:\openssl-0.9.8-stable-SNAP-20060215>nmake -f ms\ntdll.mak

Microsoft (R) Program Maintenance Utility Version 8.00.50727.42
Copyright (C) Microsoft Corporation.  All rights reserved.

Building OpenSSL
        perl util/mkdir-p.pl out32dll
created directory `out32dll'
        perl util/copy.pl .\.\e_os.h tmp32dll\e_os.h
Copying: ././e_os.h to tmp32dll/e_os.h
        perl util/copy.pl .\crypto\cryptlib.h tmp32dll\cryptlib.h
Copying: ./crypto/cryptlib.h to tmp32dll/cryptlib.h
        perl util/copy.pl .\crypto\buildinf.h tmp32dll\buildinf.h
Copying: ./crypto/buildinf.h to tmp32dll/buildinf.h
        perl util/copy.pl .\crypto\md32_common.h tmp32dll\md32_common.h
Copying: ./crypto/md32_common.h to tmp32dll/md32_common.h
        perl util/copy.pl .\crypto\o_time.h tmp32dll\o_time.h
Copying: ./crypto/o_time.h to tmp32dll/o_time.h
        perl util/copy.pl .\crypto\o_str.h tmp32dll\o_str.h
Copying: ./crypto/o_str.h to tmp32dll/o_str.h
        perl util/copy.pl .\crypto\o_dir.h tmp32dll\o_dir.h
Copying: ./crypto/o_dir.h to tmp32dll/o_dir.h
        perl util/copy.pl .\crypto\md4\md4_locl.h tmp32dll\md4_locl.h
Copying: ./crypto/md4/md4_locl.h to tmp32dll/md4_locl.h
        perl util/copy.pl .\crypto\md5\md5_locl.h tmp32dll\md5_locl.h
Copying: ./crypto/md5/md5_locl.h to tmp32dll/md5_locl.h
        perl util/copy.pl .\crypto\sha\sha_locl.h tmp32dll\sha_locl.h
Copying: ./crypto/sha/sha_locl.h to tmp32dll/sha_locl.h
        perl util/copy.pl .\crypto\ripemd\rmd_locl.h tmp32dll\rmd_locl.h
Copying: ./crypto/ripemd/rmd_locl.h to tmp32dll/rmd_locl.h
        perl util/copy.pl .\crypto\ripemd\rmdconst.h tmp32dll\rmdconst.h
Copying: ./crypto/ripemd/rmdconst.h to tmp32dll/rmdconst.h
        perl util/copy.pl .\crypto\des\des_locl.h tmp32dll\des_locl.h
Copying: ./crypto/des/des_locl.h to tmp32dll/des_locl.h
        perl util/copy.pl .\crypto\des\rpc_des.h tmp32dll\rpc_des.h
Copying: ./crypto/des/rpc_des.h to tmp32dll/rpc_des.h
        perl util/copy.pl .\crypto\des\spr.h tmp32dll\spr.h
Copying: ./crypto/des/spr.h to tmp32dll/spr.h
        perl util/copy.pl .\crypto\des\des_ver.h tmp32dll\des_ver.h
Copying: ./crypto/des/des_ver.h to tmp32dll/des_ver.h
        perl util/copy.pl .\crypto\rc2\rc2_locl.h tmp32dll\rc2_locl.h
Copying: ./crypto/rc2/rc2_locl.h to tmp32dll/rc2_locl.h
        perl util/copy.pl .\crypto\rc4\rc4_locl.h tmp32dll\rc4_locl.h
Copying: ./crypto/rc4/rc4_locl.h to tmp32dll/rc4_locl.h
        perl util/copy.pl .\crypto\rc5\rc5_locl.h tmp32dll\rc5_locl.h
Copying: ./crypto/rc5/rc5_locl.h to tmp32dll/rc5_locl.h
        perl util/copy.pl .\crypto\idea\idea_lcl.h tmp32dll\idea_lcl.h
Copying: ./crypto/idea/idea_lcl.h to tmp32dll/idea_lcl.h
        perl util/copy.pl .\crypto\bf\bf_pi.h tmp32dll\bf_pi.h
Copying: ./crypto/bf/bf_pi.h to tmp32dll/bf_pi.h
        perl util/copy.pl .\crypto\bf\bf_locl.h tmp32dll\bf_locl.h
Copying: ./crypto/bf/bf_locl.h to tmp32dll/bf_locl.h
        perl util/copy.pl .\crypto\cast\cast_s.h tmp32dll\cast_s.h
Copying: ./crypto/cast/cast_s.h to tmp32dll/cast_s.h
        perl util/copy.pl .\crypto\cast\cast_lcl.h tmp32dll\cast_lcl.h
Copying: ./crypto/cast/cast_lcl.h to tmp32dll/cast_lcl.h
        perl util/copy.pl .\crypto\aes\aes_locl.h tmp32dll\aes_locl.h
Copying: ./crypto/aes/aes_locl.h to tmp32dll/aes_locl.h
        perl util/copy.pl .\crypto\bn\bn_lcl.h tmp32dll\bn_lcl.h
Copying: ./crypto/bn/bn_lcl.h to tmp32dll/bn_lcl.h
        perl util/copy.pl .\crypto\bn\bn_prime.h tmp32dll\bn_prime.h
Copying: ./crypto/bn/bn_prime.h to tmp32dll/bn_prime.h
        perl util/copy.pl .\crypto\ec\ec_lcl.h tmp32dll\ec_lcl.h
Copying: ./crypto/ec/ec_lcl.h to tmp32dll/ec_lcl.h
        perl util/copy.pl .\crypto\ecdh\ech_locl.h tmp32dll\ech_locl.h
Copying: ./crypto/ecdh/ech_locl.h to tmp32dll/ech_locl.h
        perl util/copy.pl .\crypto\ecdsa\ecs_locl.h tmp32dll\ecs_locl.h
Copying: ./crypto/ecdsa/ecs_locl.h to tmp32dll/ecs_locl.h
        perl util/copy.pl .\crypto\bio\bio_lcl.h tmp32dll\bio_lcl.h
Copying: ./crypto/bio/bio_lcl.h to tmp32dll/bio_lcl.h
        perl util/copy.pl .\crypto\objects\obj_dat.h tmp32dll\obj_dat.h
Copying: ./crypto/objects/obj_dat.h to tmp32dll/obj_dat.h
        perl util/copy.pl .\crypto\x509v3\pcy_int.h tmp32dll\pcy_int.h
Copying: ./crypto/x509v3/pcy_int.h to tmp32dll/pcy_int.h
        perl util/copy.pl .\crypto\conf\conf_def.h tmp32dll\conf_def.h
Copying: ./crypto/conf/conf_def.h to tmp32dll/conf_def.h
        perl util/copy.pl .\crypto\ui\ui_locl.h tmp32dll\ui_locl.h
Copying: ./crypto/ui/ui_locl.h to tmp32dll/ui_locl.h
        perl util/copy.pl .\crypto\store\str_locl.h tmp32dll\str_locl.h
Copying: ./crypto/store/str_locl.h to tmp32dll/str_locl.h
        perl util/copy.pl .\ssl\ssl_locl.h tmp32dll\ssl_locl.h
Copying: ./ssl/ssl_locl.h to tmp32dll/ssl_locl.h
        perl util/copy.pl .\ssl\kssl_lcl.h tmp32dll\kssl_lcl.h
Copying: ./ssl/kssl_lcl.h to tmp32dll/kssl_lcl.h
        perl util/copy.pl .\apps\apps.h tmp32dll\apps.h
Copying: ./apps/apps.h to tmp32dll/apps.h
        perl util/copy.pl .\apps\progs.h tmp32dll\progs.h
Copying: ./apps/progs.h to tmp32dll/progs.h
        perl util/copy.pl .\apps\s_apps.h tmp32dll\s_apps.h
Copying: ./apps/s_apps.h to tmp32dll/s_apps.h
        perl util/copy.pl .\apps\testdsa.h tmp32dll\testdsa.h
Copying: ./apps/testdsa.h to tmp32dll/testdsa.h
        perl util/copy.pl .\apps\testrsa.h tmp32dll\testrsa.h
Copying: ./apps/testrsa.h to tmp32dll/testrsa.h
        perl util/copy.pl .\engines\e_4758cca_err.c tmp32dll\e_4758cca_err.c
Copying: ./engines/e_4758cca_err.c to tmp32dll/e_4758cca_err.c
        perl util/copy.pl .\engines\e_4758cca_err.h tmp32dll\e_4758cca_err.h
Copying: ./engines/e_4758cca_err.h to tmp32dll/e_4758cca_err.h
        perl util/copy.pl .\engines\e_aep_err.c tmp32dll\e_aep_err.c
Copying: ./engines/e_aep_err.c to tmp32dll/e_aep_err.c
        perl util/copy.pl .\engines\e_aep_err.h tmp32dll\e_aep_err.h
Copying: ./engines/e_aep_err.h to tmp32dll/e_aep_err.h
        perl util/copy.pl .\engines\e_atalla_err.c tmp32dll\e_atalla_err.c
Copying: ./engines/e_atalla_err.c to tmp32dll/e_atalla_err.c
        perl util/copy.pl .\engines\e_atalla_err.h tmp32dll\e_atalla_err.h
Copying: ./engines/e_atalla_err.h to tmp32dll/e_atalla_err.h
        perl util/copy.pl .\engines\e_cswift_err.c tmp32dll\e_cswift_err.c
Copying: ./engines/e_cswift_err.c to tmp32dll/e_cswift_err.c
        perl util/copy.pl .\engines\e_cswift_err.h tmp32dll\e_cswift_err.h
Copying: ./engines/e_cswift_err.h to tmp32dll/e_cswift_err.h
        perl util/copy.pl .\engines\e_gmp_err.c tmp32dll\e_gmp_err.c
Copying: ./engines/e_gmp_err.c to tmp32dll/e_gmp_err.c
        perl util/copy.pl .\engines\e_gmp_err.h tmp32dll\e_gmp_err.h
Copying: ./engines/e_gmp_err.h to tmp32dll/e_gmp_err.h
        perl util/copy.pl .\engines\e_chil_err.c tmp32dll\e_chil_err.c
Copying: ./engines/e_chil_err.c to tmp32dll/e_chil_err.c
        perl util/copy.pl .\engines\e_chil_err.h tmp32dll\e_chil_err.h
Copying: ./engines/e_chil_err.h to tmp32dll/e_chil_err.h
        perl util/copy.pl .\engines\e_nuron_err.c tmp32dll\e_nuron_err.c
Copying: ./engines/e_nuron_err.c to tmp32dll/e_nuron_err.c
        perl util/copy.pl .\engines\e_nuron_err.h tmp32dll\e_nuron_err.h
Copying: ./engines/e_nuron_err.h to tmp32dll/e_nuron_err.h
        perl util/copy.pl .\engines\e_sureware_err.c tmp32dll\e_sureware_err.c
Copying: ./engines/e_sureware_err.c to tmp32dll/e_sureware_err.c
        perl util/copy.pl .\engines\e_sureware_err.h tmp32dll\e_sureware_err.h
Copying: ./engines/e_sureware_err.h to tmp32dll/e_sureware_err.h
        perl util/copy.pl .\engines\e_ubsec_err.c tmp32dll\e_ubsec_err.c
Copying: ./engines/e_ubsec_err.c to tmp32dll/e_ubsec_err.c
        perl util/copy.pl .\engines\e_ubsec_err.h tmp32dll\e_ubsec_err.h
Copying: ./engines/e_ubsec_err.h to tmp32dll/e_ubsec_err.h
NMAKE : fatal error U1073: don't know how to make '.\crypto\opensslconf.h'
Stop.

C:\openssl-0.9.8-stable-SNAP-20060215>

Now, can you help me figure out why it's failing here?  I'm presuming
that this is the first place that it's attempting to compile anything,
but the .\crypto\opensslconf.h file isn't being generated by the prior
steps.

(There is an opensslconf.h.in in crypto, but there's no opensslconf.h,
and I do not have cygwin or mingw on this system to run Config or
configure.)

If this is a pitfall of the snapshots, would you accept a patch to the
makefile that is modified by ms\do_nasm.bat to copy opensslconf.h.in
to opensslconf.h when it's run?

-Kyle H

On 2/15/06, Dr. Stephen Henson <[hidden email]> wrote:

> On Wed, Feb 15, 2006, Kyle Hamilton wrote:
>
> > ...aaaand really stupid question, how do you configure the latest
> > stable OpenSSL 0.9.8 (20060215) snapshot for win32?  There is no
> > opensslconf.h file (except in the MacOS directory), and nmake
> > complains that it doesn't know how to make it.
> >
>
> As always following the instructions in INSTALL.W32.
>
> Steve.
> --
> Dr Stephen N. Henson. Email, S/MIME and PGP keys: see homepage
> OpenSSL project core developer and freelance consultant.
> Funding needed! Details on homepage.
> Homepage: http://www.drh-consultancy.demon.co.uk
> ______________________________________________________________________
> OpenSSL Project                                 http://www.openssl.org
> User Support Mailing List                    [hidden email]
> Automated List Manager                           [hidden email]
>
______________________________________________________________________
OpenSSL Project                                 http://www.openssl.org
User Support Mailing List                    [hidden email]
Automated List Manager                           [hidden email]
Reply | Threaded
Open this post in threaded view
|

Re: Problems with deprecated kbhit() under MS VC/C++ V8.0 (Visual Studio 2005)

Kyle Hamilton
Also, after I copy opensslconf.h.in to opensslconf.h, nmake runs happily until:

        cl /Fotmp32dll\ec_asn1.obj  -Iinc32 -Itmp32dll /MD /Ox /O2
/Ob2 /W3 /WX /Gs0 /GF /Gy /nologo -DOPENSSL_SYSNAME_WIN32
-DWIN32_LEAN_AND_MEAN -DL_ENDIAN -D DSO_WIN32
-D_CRT_SECURE_NO_DEPRECATE -D_CRT_NONSTDC_NO_DEPRECATE -DBN_ASM
-DMD5_ASM -DSHA1_ASM -DRMD160_ASM -DOPENSSL_USE_APPLINK -I.
/Fdout32dll -DOPENSSL_NO_DYNAMIC_ENGINE -D_WINDLL
-DOPENSSL_BUILD_SHLIBCRYPTO -c .\crypto\ec\ec_asn1.c
ec_asn1.c
.\crypto\ec\ec_asn1.c(262) : error C2370: 'ECPKPARAMETERS_it' :
redefinition; different storage class
        .\crypto\ec\ec_asn1.c(259) : see declaration of 'ECPKPARAMETERS_it'
.\crypto\ec\ec_asn1.c(273) : error C2370: 'EC_PRIVATEKEY_it' :
redefinition; different storage class
        .\crypto\ec\ec_asn1.c(270) : see declaration of 'EC_PRIVATEKEY_it'
NMAKE : fatal error U1077: '"C:\Program Files\Microsoft Visual Studio
8\VC\BIN\cl.EXE"' : return code '0x2'
Stop.

This is with:
Microsoft (R) 32-bit C/C++ Optimizing Compiler Version 14.00.50727.42 for 80x86
Copyright (C) Microsoft Corporation.  All rights reserved.

...i.e., MS VC++8 (Visual C++ 2005).

-Kyle H

On 2/15/06, Kyle Hamilton <[hidden email]> wrote:

> I did.  It mentioned nothing about this problem.
>
> I have Activestate Perl v5.8.7 installed, and nasm in the PATH.
>
> I ran ms\do_nasm.bat, as specified in INSTALL.W32.
>
> I then ran nmake -f ms\ntdll.mak, as specified in INSTALL.W32.
>
> C:\openssl-0.9.8-stable-SNAP-20060215>nmake -f ms\ntdll.mak
>
> Microsoft (R) Program Maintenance Utility Version 8.00.50727.42
> Copyright (C) Microsoft Corporation.  All rights reserved.
>
> Building OpenSSL
>         perl util/mkdir-p.pl out32dll
> created directory `out32dll'
>         perl util/copy.pl .\.\e_os.h tmp32dll\e_os.h
> Copying: ././e_os.h to tmp32dll/e_os.h
>         perl util/copy.pl .\crypto\cryptlib.h tmp32dll\cryptlib.h
> Copying: ./crypto/cryptlib.h to tmp32dll/cryptlib.h
>         perl util/copy.pl .\crypto\buildinf.h tmp32dll\buildinf.h
> Copying: ./crypto/buildinf.h to tmp32dll/buildinf.h
>         perl util/copy.pl .\crypto\md32_common.h tmp32dll\md32_common.h
> Copying: ./crypto/md32_common.h to tmp32dll/md32_common.h
>         perl util/copy.pl .\crypto\o_time.h tmp32dll\o_time.h
> Copying: ./crypto/o_time.h to tmp32dll/o_time.h
>         perl util/copy.pl .\crypto\o_str.h tmp32dll\o_str.h
> Copying: ./crypto/o_str.h to tmp32dll/o_str.h
>         perl util/copy.pl .\crypto\o_dir.h tmp32dll\o_dir.h
> Copying: ./crypto/o_dir.h to tmp32dll/o_dir.h
>         perl util/copy.pl .\crypto\md4\md4_locl.h tmp32dll\md4_locl.h
> Copying: ./crypto/md4/md4_locl.h to tmp32dll/md4_locl.h
>         perl util/copy.pl .\crypto\md5\md5_locl.h tmp32dll\md5_locl.h
> Copying: ./crypto/md5/md5_locl.h to tmp32dll/md5_locl.h
>         perl util/copy.pl .\crypto\sha\sha_locl.h tmp32dll\sha_locl.h
> Copying: ./crypto/sha/sha_locl.h to tmp32dll/sha_locl.h
>         perl util/copy.pl .\crypto\ripemd\rmd_locl.h tmp32dll\rmd_locl.h
> Copying: ./crypto/ripemd/rmd_locl.h to tmp32dll/rmd_locl.h
>         perl util/copy.pl .\crypto\ripemd\rmdconst.h tmp32dll\rmdconst.h
> Copying: ./crypto/ripemd/rmdconst.h to tmp32dll/rmdconst.h
>         perl util/copy.pl .\crypto\des\des_locl.h tmp32dll\des_locl.h
> Copying: ./crypto/des/des_locl.h to tmp32dll/des_locl.h
>         perl util/copy.pl .\crypto\des\rpc_des.h tmp32dll\rpc_des.h
> Copying: ./crypto/des/rpc_des.h to tmp32dll/rpc_des.h
>         perl util/copy.pl .\crypto\des\spr.h tmp32dll\spr.h
> Copying: ./crypto/des/spr.h to tmp32dll/spr.h
>         perl util/copy.pl .\crypto\des\des_ver.h tmp32dll\des_ver.h
> Copying: ./crypto/des/des_ver.h to tmp32dll/des_ver.h
>         perl util/copy.pl .\crypto\rc2\rc2_locl.h tmp32dll\rc2_locl.h
> Copying: ./crypto/rc2/rc2_locl.h to tmp32dll/rc2_locl.h
>         perl util/copy.pl .\crypto\rc4\rc4_locl.h tmp32dll\rc4_locl.h
> Copying: ./crypto/rc4/rc4_locl.h to tmp32dll/rc4_locl.h
>         perl util/copy.pl .\crypto\rc5\rc5_locl.h tmp32dll\rc5_locl.h
> Copying: ./crypto/rc5/rc5_locl.h to tmp32dll/rc5_locl.h
>         perl util/copy.pl .\crypto\idea\idea_lcl.h tmp32dll\idea_lcl.h
> Copying: ./crypto/idea/idea_lcl.h to tmp32dll/idea_lcl.h
>         perl util/copy.pl .\crypto\bf\bf_pi.h tmp32dll\bf_pi.h
> Copying: ./crypto/bf/bf_pi.h to tmp32dll/bf_pi.h
>         perl util/copy.pl .\crypto\bf\bf_locl.h tmp32dll\bf_locl.h
> Copying: ./crypto/bf/bf_locl.h to tmp32dll/bf_locl.h
>         perl util/copy.pl .\crypto\cast\cast_s.h tmp32dll\cast_s.h
> Copying: ./crypto/cast/cast_s.h to tmp32dll/cast_s.h
>         perl util/copy.pl .\crypto\cast\cast_lcl.h tmp32dll\cast_lcl.h
> Copying: ./crypto/cast/cast_lcl.h to tmp32dll/cast_lcl.h
>         perl util/copy.pl .\crypto\aes\aes_locl.h tmp32dll\aes_locl.h
> Copying: ./crypto/aes/aes_locl.h to tmp32dll/aes_locl.h
>         perl util/copy.pl .\crypto\bn\bn_lcl.h tmp32dll\bn_lcl.h
> Copying: ./crypto/bn/bn_lcl.h to tmp32dll/bn_lcl.h
>         perl util/copy.pl .\crypto\bn\bn_prime.h tmp32dll\bn_prime.h
> Copying: ./crypto/bn/bn_prime.h to tmp32dll/bn_prime.h
>         perl util/copy.pl .\crypto\ec\ec_lcl.h tmp32dll\ec_lcl.h
> Copying: ./crypto/ec/ec_lcl.h to tmp32dll/ec_lcl.h
>         perl util/copy.pl .\crypto\ecdh\ech_locl.h tmp32dll\ech_locl.h
> Copying: ./crypto/ecdh/ech_locl.h to tmp32dll/ech_locl.h
>         perl util/copy.pl .\crypto\ecdsa\ecs_locl.h tmp32dll\ecs_locl.h
> Copying: ./crypto/ecdsa/ecs_locl.h to tmp32dll/ecs_locl.h
>         perl util/copy.pl .\crypto\bio\bio_lcl.h tmp32dll\bio_lcl.h
> Copying: ./crypto/bio/bio_lcl.h to tmp32dll/bio_lcl.h
>         perl util/copy.pl .\crypto\objects\obj_dat.h tmp32dll\obj_dat.h
> Copying: ./crypto/objects/obj_dat.h to tmp32dll/obj_dat.h
>         perl util/copy.pl .\crypto\x509v3\pcy_int.h tmp32dll\pcy_int.h
> Copying: ./crypto/x509v3/pcy_int.h to tmp32dll/pcy_int.h
>         perl util/copy.pl .\crypto\conf\conf_def.h tmp32dll\conf_def.h
> Copying: ./crypto/conf/conf_def.h to tmp32dll/conf_def.h
>         perl util/copy.pl .\crypto\ui\ui_locl.h tmp32dll\ui_locl.h
> Copying: ./crypto/ui/ui_locl.h to tmp32dll/ui_locl.h
>         perl util/copy.pl .\crypto\store\str_locl.h tmp32dll\str_locl.h
> Copying: ./crypto/store/str_locl.h to tmp32dll/str_locl.h
>         perl util/copy.pl .\ssl\ssl_locl.h tmp32dll\ssl_locl.h
> Copying: ./ssl/ssl_locl.h to tmp32dll/ssl_locl.h
>         perl util/copy.pl .\ssl\kssl_lcl.h tmp32dll\kssl_lcl.h
> Copying: ./ssl/kssl_lcl.h to tmp32dll/kssl_lcl.h
>         perl util/copy.pl .\apps\apps.h tmp32dll\apps.h
> Copying: ./apps/apps.h to tmp32dll/apps.h
>         perl util/copy.pl .\apps\progs.h tmp32dll\progs.h
> Copying: ./apps/progs.h to tmp32dll/progs.h
>         perl util/copy.pl .\apps\s_apps.h tmp32dll\s_apps.h
> Copying: ./apps/s_apps.h to tmp32dll/s_apps.h
>         perl util/copy.pl .\apps\testdsa.h tmp32dll\testdsa.h
> Copying: ./apps/testdsa.h to tmp32dll/testdsa.h
>         perl util/copy.pl .\apps\testrsa.h tmp32dll\testrsa.h
> Copying: ./apps/testrsa.h to tmp32dll/testrsa.h
>         perl util/copy.pl .\engines\e_4758cca_err.c tmp32dll\e_4758cca_err.c
> Copying: ./engines/e_4758cca_err.c to tmp32dll/e_4758cca_err.c
>         perl util/copy.pl .\engines\e_4758cca_err.h tmp32dll\e_4758cca_err.h
> Copying: ./engines/e_4758cca_err.h to tmp32dll/e_4758cca_err.h
>         perl util/copy.pl .\engines\e_aep_err.c tmp32dll\e_aep_err.c
> Copying: ./engines/e_aep_err.c to tmp32dll/e_aep_err.c
>         perl util/copy.pl .\engines\e_aep_err.h tmp32dll\e_aep_err.h
> Copying: ./engines/e_aep_err.h to tmp32dll/e_aep_err.h
>         perl util/copy.pl .\engines\e_atalla_err.c tmp32dll\e_atalla_err.c
> Copying: ./engines/e_atalla_err.c to tmp32dll/e_atalla_err.c
>         perl util/copy.pl .\engines\e_atalla_err.h tmp32dll\e_atalla_err.h
> Copying: ./engines/e_atalla_err.h to tmp32dll/e_atalla_err.h
>         perl util/copy.pl .\engines\e_cswift_err.c tmp32dll\e_cswift_err.c
> Copying: ./engines/e_cswift_err.c to tmp32dll/e_cswift_err.c
>         perl util/copy.pl .\engines\e_cswift_err.h tmp32dll\e_cswift_err.h
> Copying: ./engines/e_cswift_err.h to tmp32dll/e_cswift_err.h
>         perl util/copy.pl .\engines\e_gmp_err.c tmp32dll\e_gmp_err.c
> Copying: ./engines/e_gmp_err.c to tmp32dll/e_gmp_err.c
>         perl util/copy.pl .\engines\e_gmp_err.h tmp32dll\e_gmp_err.h
> Copying: ./engines/e_gmp_err.h to tmp32dll/e_gmp_err.h
>         perl util/copy.pl .\engines\e_chil_err.c tmp32dll\e_chil_err.c
> Copying: ./engines/e_chil_err.c to tmp32dll/e_chil_err.c
>         perl util/copy.pl .\engines\e_chil_err.h tmp32dll\e_chil_err.h
> Copying: ./engines/e_chil_err.h to tmp32dll/e_chil_err.h
>         perl util/copy.pl .\engines\e_nuron_err.c tmp32dll\e_nuron_err.c
> Copying: ./engines/e_nuron_err.c to tmp32dll/e_nuron_err.c
>         perl util/copy.pl .\engines\e_nuron_err.h tmp32dll\e_nuron_err.h
> Copying: ./engines/e_nuron_err.h to tmp32dll/e_nuron_err.h
>         perl util/copy.pl .\engines\e_sureware_err.c tmp32dll\e_sureware_err.c
> Copying: ./engines/e_sureware_err.c to tmp32dll/e_sureware_err.c
>         perl util/copy.pl .\engines\e_sureware_err.h tmp32dll\e_sureware_err.h
> Copying: ./engines/e_sureware_err.h to tmp32dll/e_sureware_err.h
>         perl util/copy.pl .\engines\e_ubsec_err.c tmp32dll\e_ubsec_err.c
> Copying: ./engines/e_ubsec_err.c to tmp32dll/e_ubsec_err.c
>         perl util/copy.pl .\engines\e_ubsec_err.h tmp32dll\e_ubsec_err.h
> Copying: ./engines/e_ubsec_err.h to tmp32dll/e_ubsec_err.h
> NMAKE : fatal error U1073: don't know how to make '.\crypto\opensslconf.h'
> Stop.
>
> C:\openssl-0.9.8-stable-SNAP-20060215>
>
> Now, can you help me figure out why it's failing here?  I'm presuming
> that this is the first place that it's attempting to compile anything,
> but the .\crypto\opensslconf.h file isn't being generated by the prior
> steps.
>
> (There is an opensslconf.h.in in crypto, but there's no opensslconf.h,
> and I do not have cygwin or mingw on this system to run Config or
> configure.)
>
> If this is a pitfall of the snapshots, would you accept a patch to the
> makefile that is modified by ms\do_nasm.bat to copy opensslconf.h.in
> to opensslconf.h when it's run?
>
> -Kyle H
>
> On 2/15/06, Dr. Stephen Henson <[hidden email]> wrote:
> > On Wed, Feb 15, 2006, Kyle Hamilton wrote:
> >
> > > ...aaaand really stupid question, how do you configure the latest
> > > stable OpenSSL 0.9.8 (20060215) snapshot for win32?  There is no
> > > opensslconf.h file (except in the MacOS directory), and nmake
> > > complains that it doesn't know how to make it.
> > >
> >
> > As always following the instructions in INSTALL.W32.
> >
> > Steve.
> > --
> > Dr Stephen N. Henson. Email, S/MIME and PGP keys: see homepage
> > OpenSSL project core developer and freelance consultant.
> > Funding needed! Details on homepage.
> > Homepage: http://www.drh-consultancy.demon.co.uk
> > ______________________________________________________________________
> > OpenSSL Project                                 http://www.openssl.org
> > User Support Mailing List                    [hidden email]
> > Automated List Manager                           [hidden email]
> >
>
______________________________________________________________________
OpenSSL Project                                 http://www.openssl.org
User Support Mailing List                    [hidden email]
Automated List Manager                           [hidden email]
Reply | Threaded
Open this post in threaded view
|

Re: Problems with deprecated kbhit() under MS VC/C++ V8.0 (Visual Studio 2005)

Dr. Stephen Henson
In reply to this post by Kyle Hamilton
On Wed, Feb 15, 2006, Kyle Hamilton wrote:

> I did.  It mentioned nothing about this problem.
>
> I have Activestate Perl v5.8.7 installed, and nasm in the PATH.
>
> I ran ms\do_nasm.bat, as specified in INSTALL.W32.
>

Did you do:

perl Configure VC-WIN32

first?

Steve.
--
Dr Stephen N. Henson. Email, S/MIME and PGP keys: see homepage
OpenSSL project core developer and freelance consultant.
Funding needed! Details on homepage.
Homepage: http://www.drh-consultancy.demon.co.uk
______________________________________________________________________
OpenSSL Project                                 http://www.openssl.org
User Support Mailing List                    [hidden email]
Automated List Manager                           [hidden email]
Reply | Threaded
Open this post in threaded view
|

Re: Problems with deprecated kbhit() under MS VC/C++ V8.0 (Visual Studio 2005)

Kyle Hamilton
I thought it had, but it appears that I had not.  My apologies.
(Would you accept a patch to verify that the environment is set up
correctly in the makefile?)

./crypto/opensslconf.h:
    @echo You need to run 'perl Configure VC-WIN32' before OpenSSL can
be compiled
    @exit 42

-Kyle H


Also, every time I run nmake, it recopies the header files.

On 2/15/06, Dr. Stephen Henson <[hidden email]> wrote:

> On Wed, Feb 15, 2006, Kyle Hamilton wrote:
>
> > I did.  It mentioned nothing about this problem.
> >
> > I have Activestate Perl v5.8.7 installed, and nasm in the PATH.
> >
> > I ran ms\do_nasm.bat, as specified in INSTALL.W32.
> >
>
> Did you do:
>
> perl Configure VC-WIN32
>
> first?
>
> Steve.
> --
> Dr Stephen N. Henson. Email, S/MIME and PGP keys: see homepage
> OpenSSL project core developer and freelance consultant.
> Funding needed! Details on homepage.
> Homepage: http://www.drh-consultancy.demon.co.uk
> ______________________________________________________________________
> OpenSSL Project                                 http://www.openssl.org
> User Support Mailing List                    [hidden email]
> Automated List Manager                           [hidden email]
>
______________________________________________________________________
OpenSSL Project                                 http://www.openssl.org
User Support Mailing List                    [hidden email]
Automated List Manager                           [hidden email]