In message <[EMAIL PROTECTED]> on Thu, 19 Jun 2003 09:35:20 -0600, "Verdon Walker" <[EMAIL PROTECTED]> said:
VWalker> The first error I see with the latest developement snapshot when compiling for Windows is: VWalker> VWalker> cl /Fotmp32.dbg\ech_ossl.obj -Iinc32 -Itmp32.dbg /MDd /W3 /WX /Zi /Yd /Od /nologo -DOPENSSL_SYSNAME_WIN32 -D_DEBUG -DL_ENDIAN -DWIN32_LEAN_AND_MEAN -DDEBUG -DDSO_WIN32 /Fdout32 -DOPENSSL_NO_KRB5 -c .\crypto\ecdh\ech_ossl.c VWalker> ech_ossl.c VWalker> .\crypto\ecdh\ech_ossl.c(176) : error C2220: warning treated as error - no object file generated VWalker> .\crypto\ecdh\ech_ossl.c(176) : warning C4018: '!=' : signed/unsigned mismatch VWalker> NMAKE : fatal error U1077: 'cl' : return code '0x2' VWalker> VWalker> I addressed that by casting the results from BN_bn2bin() to a size_t and then proceeded until I saw the following: I'll commit that change in a few minutes. VWalker> cl /Fotmp32.dbg\eng_dyn.obj -Iinc32 -Itmp32.dbg /MDd /W3 /WX /Zi /Yd /Od /nologo -DOPENSSL_SYSNAME_WIN32 -D_DEBUG -DL_ENDIAN -DWIN32_LEAN_AND_MEAN -DDEBUG -DDSO_WIN32 /Fdout32 -DOPENSSL_NO_KRB5 -c .\crypto\engine\eng_dyn.c VWalker> eng_dyn.c VWalker> .\crypto\engine\eng_dyn.c(281) : error C2220: warning treated as error - no object file generated VWalker> .\crypto\engine\eng_dyn.c(281) : warning C4028: formal parameter 5 different from declaration VWalker> .\crypto\engine\eng_dyn.c(281) : warning C4024: 'ENGINE_set_ctrl_function' : different types for formal and actual parameter 2 VWalker> NMAKE : fatal error U1077: 'cl' : return code '0x2' VWalker> VWalker> I solved this by changing the definition of "dynamic_ctrl" from: VWalker> VWalker> static int dynamic_ctrl(ENGINE *e, int cmd, long i, void *p, void (*f)()); VWalker> VWalker> to: VWalker> VWalker> static int dynamic_ctrl(ENGINE *e, int cmd, long i, void *p, void (*f)(void)); I'll commit that change too. VWalker> I then proceeded until I ran into: VWalker> VWalker> cl /Fotmp32.dbg\ectest.obj -Iinc32 -Itmp32.dbg /MDd /W3 /WX /Zi /Yd /Od /nologo -DOPENSSL_SYSNAME_WIN32 -D_DEBUG -DL_ENDIAN -DWIN32_LEAN_AND_MEAN -DDEBUG -DDSO_WIN32 /Fdout32 -DOPENSSL_NO_KRB5 -c .\crypto\ec\ectest.c VWalker> ectest.c VWalker> .\crypto\ec\ectest.c(193) : error C2220: warning treated as error - no object file generated VWalker> .\crypto\ec\ectest.c(193) : warning C4098: 'prime_field_tests' : 'void' function returning a value VWalker> .\crypto\ec\ectest.c(199) : warning C4098: 'prime_field_tests' : 'void' function returning a value VWalker> .\crypto\ec\ectest.c(201) : warning C4098: 'prime_field_tests' : 'void' function returning a value VWalker> .\crypto\ec\ectest.c(202) : warning C4098: 'prime_field_tests' : 'void' function returning a value VWalker> .\crypto\ec\ectest.c(203) : warning C4098: 'prime_field_tests' : 'void' function returning a value VWalker> .\crypto\ec\ectest.c(207) : warning C4098: 'prime_field_tests' : 'void' function returning a value VWalker> .\crypto\ec\ectest.c(209) : warning C4098: 'prime_field_tests' : 'void' function returning a value VWalker> and on and on and on VWalker> VWalker> because the macro "ABORT" does an "EXIT(1)". Since "ABORT" is only used inside of void functions, I simply commented the "EXIT(1)" out to get around this. I then proceeded until: Actually, in the Windows section of e_os.h, EXIT() is incorrectly defined to "return(n)". It should, as far as I understand, be "exit(n)". I'll commit that change. VWalker> cl /Fotmp32.dbg\evp_test.obj -Iinc32 -Itmp32.dbg /MDd /W3 /WX /Zi /Yd /Od /nologo -DOPENSSL_SYSNAME_WIN32 -D_DEBUG -DL_ENDIAN -DWIN32_LEAN_AND_MEAN -DDEBUG -DDSO_WIN32 /Fdout32 -DOPENSSL_NO_KRB5 -c .\crypto\evp\evp_test.c VWalker> evp_test.c VWalker> link /nologo /subsystem:console /machine:I386 /opt:ref /debug /out:out32.dbg\evp_test.exe @c:\temp\nme02284. VWalker> libeay32.lib(eng_all.obj) : error LNK2001: unresolved external symbol _ENGINE_load_ubsec VWalker> libeay32.lib(eng_all.obj) : error LNK2001: unresolved external symbol _ENGINE_load_sureware VWalker> libeay32.lib(eng_all.obj) : error LNK2001: unresolved external symbol _ENGINE_load_nuron VWalker> libeay32.lib(eng_all.obj) : error LNK2001: unresolved external symbol _ENGINE_load_chil VWalker> libeay32.lib(eng_all.obj) : error LNK2001: unresolved external symbol _ENGINE_load_cswift VWalker> libeay32.lib(eng_all.obj) : error LNK2001: unresolved external symbol _ENGINE_load_atalla VWalker> libeay32.lib(eng_all.obj) : error LNK2001: unresolved external symbol _ENGINE_load_aep VWalker> libeay32.lib(eng_all.obj) : error LNK2001: unresolved external symbol _ENGINE_load_4758cca VWalker> out32.dbg\evp_test.exe : fatal error LNK1120: 8 unresolved externals VWalker> NMAKE : fatal error U1077: 'link' : return code '0x460' VWalker> VWalker> I fixed this by defining "OPENSSL_NO_STATIC_ENGINE" inside of "ms\32all.bat" which I use when building windows. I then seemed in really good shape until finally I got: VWalker> VWalker> link /debug /nologo /subsystem:console /machine:I386 /opt:ref /debug /dll /out:out32dll.dbg\libeay32.dll /def:ms/LIBEAY32.def @c:\temp\nma01556. VWalker> LIBEAY32.def : error LNK2001: unresolved external symbol ENGINE_load_4758cca VWalker> LIBEAY32.def : error LNK2001: unresolved external symbol ENGINE_load_aep VWalker> LIBEAY32.def : error LNK2001: unresolved external symbol ENGINE_load_atalla VWalker> LIBEAY32.def : error LNK2001: unresolved external symbol ENGINE_load_chil VWalker> LIBEAY32.def : error LNK2001: unresolved external symbol ENGINE_load_cswift VWalker> LIBEAY32.def : error LNK2001: unresolved external symbol ENGINE_load_gmp VWalker> LIBEAY32.def : error LNK2001: unresolved external symbol ENGINE_load_nuron VWalker> LIBEAY32.def : error LNK2001: unresolved external symbol ENGINE_load_sureware VWalker> LIBEAY32.def : error LNK2001: unresolved external symbol ENGINE_load_ubsec VWalker> LIBEAY32.def : error LNK2001: unresolved external symbol STORE_Directory VWalker> LIBEAY32.def : error LNK2001: unresolved external symbol STORE_File VWalker> LIBEAY32.def : error LNK2001: unresolved external symbol STORE_ctrl VWalker> LIBEAY32.def : error LNK2001: unresolved external symbol STORE_method_get_cleanup_function VWalker> LIBEAY32.def : error LNK2001: unresolved external symbol STORE_method_get_initialise_function VWalker> LIBEAY32.def : error LNK2001: unresolved external symbol STORE_method_get_modify_function VWalker> LIBEAY32.def : error LNK2001: unresolved external symbol STORE_method_set_cleanup_function VWalker> LIBEAY32.def : error LNK2001: unresolved external symbol STORE_method_set_initialise_function VWalker> LIBEAY32.def : error LNK2001: unresolved external symbol STORE_method_set_modify_function VWalker> LIBEAY32.def : error LNK2001: unresolved external symbol STORE_modify_arbitrary VWalker> LIBEAY32.def : error LNK2001: unresolved external symbol STORE_modify_certificate VWalker> LIBEAY32.def : error LNK2001: unresolved external symbol STORE_modify_crl VWalker> LIBEAY32.def : error LNK2001: unresolved external symbol STORE_modify_number VWalker> LIBEAY32.def : error LNK2001: unresolved external symbol STORE_modify_private_key VWalker> LIBEAY32.def : error LNK2001: unresolved external symbol STORE_modify_public_key VWalker> out32dll.dbg\libeay32.lib : fatal error LNK1120: 24 unresolved externals VWalker> LINK : fatal error LNK1141: failure during build of exports file VWalker> NMAKE : fatal error U1077: 'link' : return code '0x475' Hmm, weird... VWalker> so I finally quit. (I did have Windows static libraries at this point which pass the test suite.) The Windows build obviously isn't quite ready for prime time. :-) True. VWalker> BTW, I also see the warning: VWalker> VWalker> Warning: STORE_ATTR_INFO_in_range does not have a number assigned VWalker> VWalker> when configuring the make files. OK, I'll generate an update of the numbers as well. -- Richard Levitte \ Tunnlandsvägen 3 \ [EMAIL PROTECTED] [EMAIL PROTECTED] \ S-168 36 BROMMA \ T: +46-8-26 52 47 \ SWEDEN \ or +46-708-26 53 44 Procurator Odiosus Ex Infernis -- [EMAIL PROTECTED] Member of the OpenSSL development team: http://www.openssl.org/ Unsolicited commercial email is subject to an archival fee of $400. See <http://www.stacken.kth.se/~levitte/mail/> for more info. ______________________________________________________________________ OpenSSL Project http://www.openssl.org Development Mailing List [EMAIL PROTECTED] Automated List Manager [EMAIL PROTECTED]