This is the issue I reported as RT #2086. The problem has been fixed in the 1.0.0 tree but only partly addressed in the 0.9.8 tree.
As I posted last week: Appears to be fixed in 1.0.0 tree; but 0.9.8m-beta still has part of the problem because it didn't get the "remove duplicate code" part of e.g. http://cvs.openssl.org/chngview?cn=18895 . The issue is in the VC-32.pl script in util/pl. It can be fixed by replacing: $ex.=' bufferoverflowu.lib' if ($FLAVOR =~ /WIN64/); with: $ex.=' bufferoverflowu.lib' if ($FLAVOR =~ /WIN64/ and `cl 2>&1` =~ /14\.00\.4[0-9]{4}\./); in three places in the 0.9.8l tree, or two additional places in 0.9.8m-beta1. - Ariel -- - Ariel Salomon / Security Lead, Senior Software Engineer Real-Time Innovations (RTI) / www.rti.com 408 990-7439 / ar...@rti.com RTI - The Real-Time Middleware Experts > -----Original Message----- > From: owner-openssl-us...@openssl.org [mailto:owner-openssl- > us...@openssl.org] On Behalf Of Lutz Jaenicke > Sent: Tuesday, February 02, 2010 4:19 AM > To: openssl-users@openssl.org > Cc: Del Hyman Jones > Subject: [FWD] Building Win64 0.9.8l on VS2008 > > Forwarded to openssl-users for public discussion > > Best regards, > Lutz > > ----- Forwarded message from Del Hyman Jones <dhjo...@becrypt.com> ----- > > Subject: Building Win64 0.9.8l on VS2008 > Date: Mon, 1 Feb 2010 17:15:28 -0000 > Thread-Topic: Building Win64 0.9.8l on VS2008 > Thread-Index: AcqjYiayMNdYT1+HTXyt5bFZjxGglQ== > From: Del Hyman Jones <dhjo...@becrypt.com> > To: r...@openssl.org > > Hi, > > > > I wonder if you can help me I am trying to build OpenSSL which is > targeted for 64bit VS2008 (VC_WIN64A). basically when I try to build it > I get the following error message > > > > link /nologo /subsystem:console /opt:ref /dll /out:out32dll\libeay32.dll > /def:ms/LIBEAY32.def @C:\Users\dhj001\AppData\Local\Temp\nm4FD3.tmp > > LINK : fatal error LNK1181: cannot open input file 'bufferoverflowu.lib' > > > > Now it appears that this library is not longer shipped with Visual > Studio 2008 or with the 6.0A SDK. I have tried to traced through the > perl scripts but I cannot find out how this file is getting into the > make files as an extra library. Is it actually needed as I have seen > some reports that say it might not be? > > > > I have attached my build script at the end of this email just in case I > have done something wrong there if you would not mind having a look. > > > > Any help would be greatly appreciated, > > > > Kind regards, > > > Del Hyman-Jones > > > > > > > > :@ECHO OFF > > PUSHD . > > REM > > REM Build\Windows\Build64.bat > > REM > > REM Assumes you are in the Build\Windows\ directory when executing this > script > > > > SET OLDPATH=%PATH% > > SET PATH=%PATH%;C:\Perl\Bin\ > > SET SSLVERSION=openssl-0.9.8l > > > > CD ..\.. > > SET MAINROOT=%CD% > > > > SET CONFIG=VC-WIN64A > > SET MSBATCH=ms\do_win64a.bat > > SET EXPORTDIR=%MAINROOT%\Export\Win64\VC9 > > SET CODEROOT=%MAINROOT%\%SSLVERSION%_%CONFIG% > > SET OUTPUTDIR=%CODEROOT%\out32dll > > SET BUILDTYPE=x86_amd64 > > TITLE OpenSSL Windows 64Bit build... > > > > SET BUILDLOG=%LOGROOT%\build.log > > SET BUILDERR=%LOGROOT%\build.err > > > > SET LOGROOT=%MAINROOT%\LogFiles > > RMDIR /Q /S >NUL: 2>NUL: %LOGROOT% > > MKDIR >NUL: 2>NUL: %LOGROOT% > > > > :Setup Visual Studio command line environment. NOTE: This is NOT the > sdk environment > > CALL "C:\Program Files (x86)\Microsoft Visual Studio > 9.0\VC\vcvarsall.bat" %BUILDTYPE% > > > > : Assumes you are in the Build\Windows\ subdirectory when you start > > > > ECHO Removing files from previous builds (if any)... > > RMDIR /S /Q %CODEROOT% >NUL: 2>NUL: > > ECHO Backing up files... > > xcopy /S /Y "%MAINROOT%\%SSLVERSION%\*.*" "%CODEROOT%\" >NUL: > > ECHO Files backed up. > > cd %CODEROOT% > > > > ECHO Running perl... > > perl Configure %CONFIG% >%BUILDLOG% 2>%BUILDERR% > > if ERRORLEVEL 1 (ECHO Perl failed. & GOTO Failed ) > > > > perl util\mkfiles.pl >MINFO > > if ERRORLEVEL 1 (ECHO Failed to create MINFO. & GOTO Failed ) > > > > perl ms\uplink.pl win64a > ms\uptable.asm > > if ERRORLEVEL 1 (ECHO Failed to create ms\uptable.asm. & GOTO Failed ) > > > > ml64 -c -Foms\uptable.obj ms\uptable.asm > > if ERRORLEVEL 1 (ECHO Failed to build ms\uptable.asm. & GOTO Failed ) > > > > perl util\mk1mf.pl dll no-asm %CONFIG% >ms\ntdll64.mak > > if ERRORLEVEL 1 (ECHO Failed to create ms\ntdll64.mak & GOTO Failed ) > > > > perl util\mk1mf.pl debug dll no-asm %CONFIG% >ms\dntdll64.mak > > if ERRORLEVEL 1 (ECHO Failed to create ms\dntdll64.mak & GOTO Failed ) > > > > perl util\mkdef.pl 32 libeay > ms\libeay32.def > > if ERRORLEVEL 1 (ECHO Failed to create ms\libeay32.def. & GOTO Failed ) > > > > perl util\mkdef.pl 32 ssleay > ms\ssleay32.def > > if ERRORLEVEL 1 (ECHO Failed to create ms\ssleay32.def. & GOTO Failed ) > > > > ECHO Running nmake... > > > > nmake -f ms\ntdll64.mak >>%BUILDLOG% 2>>%BUILDERR% > > if ERRORLEVEL 1 (ECHO nmake of ntdll64.mak failed. & GOTO Failed ) > > > > nmake -f ms\dntdll64.mak >>%BUILDLOG% 2>>%BUILDERR% > > if ERRORLEVEL 1 (ECHO nmake of dntdll64.mak failed. & GOTO Failed ) > > > > cd %OUTPUTDIR% > > if ERRORLEVEL 1 (ECHO Output directory does not exist. [%OUTPUTDIR%] & > GOTO Failed ) > > ECHO Running Tests... > > CALL ..\ms\test >>%BUILDLOG% 2>>%BUILDERR% > > if ERRORLEVEL 1 GOTO Failed2 > > cd .. > > xcopy /S /Y %OUTPUTDIR%.dbg\*.lib "%EXPORTDIR%\bin\debug\" > > xcopy /S /Y %OUTPUTDIR%.dbg\*.dll "%EXPORTDIR%\bin\debug\" > > xcopy /S /Y %OUTPUTDIR%.dbg\*.exp "%EXPORTDIR%\bin\debug\" > > xcopy /S /Y %OUTPUTDIR%\*.lib "%EXPORTDIR%\bin\release\" > > xcopy /S /Y %OUTPUTDIR%\*.dll "%EXPORTDIR%\bin\release\" > > xcopy /S /Y %OUTPUTDIR%\*.exp "%EXPORTDIR%\bin\release\" > > xcopy /S /Y %CODEROOT%\inc64\openssl\*.* "%EXPORTDIR%\inc\openssl\" > > GOTO Success > > > > :Failed > > ECHO *** ERROR *** - Build Failed. Please ensure that you perform the > build on a fresh sync as files are modified by previous builds. > > ECHO Refer to build.log and build.err for more details > > NOTEPAD %BUILDLOG% > > GOTO Done > > > > :Failed2 > > ECHO *** ERROR *** - Tests Failed. The build succeeded but the test > script failed. > > ECHO Refer to build.log and build.err for more details > > NOTEPAD %BUILDLOG% > > GOTO Done > > > > :Success > > ECHO *** SUCCESS *** - Build and tests succeeded. > > > > :Done > > POPD > > SET PATH=%OLDPATH% > > PAUSE > > SET CONFIG= > > SET MSBATCH= > > SET OUTDIR= > > SET BUILDTYPE= > > > ______________________________________________________________________ > This email has been scanned by the MessageLabs Email Security System. > For more information please visit http://www.messagelabs.com/email > ______________________________________________________________________ > ----- End forwarded message ----- > -- > Lutz Jaenicke jaeni...@openssl.org > OpenSSL Project http://www.openssl.org/~jaenicke/ > ______________________________________________________________________ > OpenSSL Project http://www.openssl.org > User Support Mailing List openssl-users@openssl.org > Automated List Manager majord...@openssl.org ______________________________________________________________________ OpenSSL Project http://www.openssl.org User Support Mailing List openssl-users@openssl.org Automated List Manager majord...@openssl.org