Greetings:

i was able to build openssl for WinXP using essentially 
the instructions in the INSTALL.W32 file, except for 
one [big] addition.


when i 1st tried to build, i got the following link errors:

                LIBEAY32.def : error LNK2001: unresolved external symbol 
DH_OpenSSL
                LIBEAY32.def : error LNK2001: unresolved external symbol 
DH_check
                LIBEAY32.def : error LNK2001: unresolved external symbol 
DH_compute_key
                LIBEAY32.def : error LNK2001: unresolved external symbol 
DH_generate_key
                LIBEAY32.def : error LNK2001: unresolved external symbol
DH_generate_parameters
                out32dll\libeay32.lib : fatal error LNK1120: 5 unresolved 
externals
                LINK : fatal error LNK1141: failure during build of exports file
                NMAKE : fatal error U1077: 'link' : return code '0x475'
                Stop.


only when i added the following line to the set of 
dependent objects in the ntdll.mak file:

        CRYPTOOBJ=$(OBJ_D)\cryptlib.obj \
                $(OBJ_D)\fips_dh_check.obj $(OBJ_D)\fips_dh_gen.obj 
$(OBJ_D)\fips_dh_key.obj \


and the following 6 lines that are the rules on how to 
build those three objects:

        $(OBJ_D)\fips_dh_check.obj: $(SRC_D)\fips\dh\fips_dh_check.c
                $(CC) /Fo$(OBJ_D)\fips_dh_check.obj $(APP_CFLAGS) -c
$(SRC_D)\fips\dh\fips_dh_check.c

        $(OBJ_D)\fips_dh_gen.obj: $(SRC_D)\fips\dh\fips_dh_gen.c
                $(CC) /Fo$(OBJ_D)\fips_dh_gen.obj $(APP_CFLAGS) -c
$(SRC_D)\fips\dh\fips_dh_gen.c

        $(OBJ_D)\fips_dh_key.obj: $(SRC_D)\fips\dh\fips_dh_key.c
                $(CC) /Fo$(OBJ_D)\fips_dh_key.obj $(APP_CFLAGS) -c
$(SRC_D)\fips\dh\fips_dh_key.c



...did the build/link complete.

i'm clear on why those fips_*.c files were needed - as they 
define methods like so:

   #ifdef OPENSSL_FIPS
        int DH_generate_key( ... ) {

        }
   #endif


so why didn't the Makefile have the right set of objects in it?  

there were a bunch of fips* object files in the ntdll.mak file, 
so it seems odd to me that not all of the required objects 
were in that file.

is this a common problem?  if not, then perhaps the mistake 
is mine? 

thanks
--toml
______________________________________________________________________
OpenSSL Project                                 http://www.openssl.org
User Support Mailing List                    openssl-users@openssl.org
Automated List Manager                           [EMAIL PROTECTED]

Reply via email to