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

Reply via email to