- Скачать либу здесь : openssl-0.9.8j.tar.gz
- Скачать Active Perl отсюда: http://www.softportal.com/get-70-activeperl.html
- Установить Active Perl
set OPTS=no-asm perl Configure VC-WIN32 perl util\mkfiles.pl >MINFO perl util\mk1mf.pl %OPTS% debug VC-WIN32 >d32.mak perl util\mk1mf.pl %OPTS% VC-WIN32 >32.mak perl util\mk1mf.pl %OPTS% debug dll VC-WIN32 >d32dll.mak perl util\mk1mf.pl %OPTS% dll VC-WIN32 >32dll.mak perl util\mkdef.pl 32 libeay > ms\libeay32.def perl util\mkdef.pl 32 ssleay > ms\ssleay32.def rem set PATH=%MSSDK6DIR%\VC\Bin;%PATH% call "c:\Program Files\Microsoft Visual Studio 8\Common7\Tools\vsvars32.bat" nmake -f d32.mak @if errorlevel 1 goto end nmake -f 32.mak @if errorlevel 1 goto end nmake -f d32dll.mak @if errorlevel 1 goto end nmake -f 32dll.mak :end
Сборка с помощью Visual Studio 2008:
set OPTS=no-asm perl Configure VC-WIN32 perl util\mkfiles.pl >MINFO perl util\mk1mf.pl %OPTS% debug VC-WIN32 >d32.mak perl util\mk1mf.pl %OPTS% VC-WIN32 >32.mak perl util\mk1mf.pl %OPTS% debug dll VC-WIN32 >d32dll.mak perl util\mk1mf.pl %OPTS% dll VC-WIN32 >32dll.mak perl util\mkdef.pl 32 libeay > ms\libeay32.def perl util\mkdef.pl 32 ssleay > ms\ssleay32.def rem set PATH=%MSSDK6DIR%\VC\Bin;%PATH% call "c:\Program Files\Microsoft Visual Studio 9.0\Common7\Tools\vsvars32.bat" nmake -f d32.mak @if errorlevel 1 goto end nmake -f 32.mak @if errorlevel 1 goto end nmake -f d32dll.mak @if errorlevel 1 goto end nmake -f 32dll.mak :end
Сборка с помощью Vista SDK
set OPTS=no-asm perl Configure VC-WIN32 perl util\mkfiles.pl >MINFO perl util\mk1mf.pl %OPTS% debug VC-WIN32 >d32.mak perl util\mk1mf.pl %OPTS% VC-WIN32 >32.mak perl util\mk1mf.pl %OPTS% debug dll VC-WIN32 >d32dll.mak perl util\mk1mf.pl %OPTS% dll VC-WIN32 >32dll.mak perl util\mkdef.pl 32 libeay > ms\libeay32.def perl util\mkdef.pl 32 ssleay > ms\ssleay32.def @SET VSINSTALLDIR=c:\Program Files\Microsoft Visual Studio 8 @SET VCINSTALLDIR=%VSINSTALLDIR%\VC @SET FrameworkDir=c:\WINDOWS\Microsoft.NET\Framework @SET FrameworkVersion=v2.0.50727 @SET FrameworkSDKDir=%VSINSTALLDIR%\SDK\v2.0 @set DevEnvDir=%VSINSTALLDIR%\Common7\IDE @set PATH=%MSSDK6DIR%\VC\Bin;%VSINSTALLDIR%\Common7\IDE;%VCINSTALLDIR%\BIN;%VSINSTALLDIR%\Common7\Tools;%VSINSTALLDIR%\Common7\Tools\bin;%VCINSTALLDIR%\PlatformSDK\bin;%VSINSTALLDIR%\SDK\v2.0\bin;c:\WINDOWS\Microsoft.NET\Framework\v2.0.50727;%VCINSTALLDIR%\VCPackages;%PATH% @set INCLUDE=%MSSDK6DIR%\Include;%MSSDK6DIR%\VC\INCLUDE;%VCINSTALLDIR%\ATLMFC\INCLUDE;%VCINSTALLDIR%\INCLUDE;%VCINSTALLDIR%\PlatformSDK\include;%VSINSTALLDIR%\SDK\v2.0\include;%INCLUDE% @set LIB=%MSSDK6DIR%\Lib;%MSSDK6DIR%\VC\LIB;%VCINSTALLDIR%\ATLMFC\LIB;%VCINSTALLDIR%\LIB;%VCINSTALLDIR%\PlatformSDK\lib;%VSINSTALLDIR%\SDK\v2.0\lib;%LIB% @set LIBPATH=c:\WINDOWS\Microsoft.NET\Framework\v2.0.50727;%VCINSTALLDIR%\ATLMFC\LIB nmake -f d32.mak @if errorlevel 1 goto end nmake -f 32.mak @if errorlevel 1 goto end nmake -f d32dll.mak @if errorlevel 1 goto end nmake -f 32dll.mak :end
Скрипт для инсталла:
set OPENSSL_ROOT=%~dp0 set TOOLSET=%1% cd %OPENSSL_ROOT% call :CreateDirectories call :MoveOutFiles call :RemoveOldDirectories goto end :CreateDirectories mkdir lib cd ./lib mkdir %TOOLSET% cd ./%TOOLSET% mkdir debug cd ./debug mkdir shared mkdir static cd .. mkdir release cd ./release mkdir shared mkdir static cd .. exit /b :MoveOutFiles cd %OPENSSL_ROOT% move %OPENSSL_ROOT%out32\* %OPENSSL_ROOT%lib\%TOOLSET%\release\static\ move %OPENSSL_ROOT%out32dll\* %OPENSSL_ROOT%lib\%TOOLSET%\release\shared\ move %OPENSSL_ROOT%out32.dbg\* %OPENSSL_ROOT%lib\%TOOLSET%\debug\static\ move %OPENSSL_ROOT%out32dll.dbg\* %OPENSSL_ROOT%lib\%TOOLSET%\debug\shared\ cd %OPENSSL_ROOT% exit /b :RemoveOldDirectories del /S /Q %OPENSSL_ROOT%out32\* del /S /Q %OPENSSL_ROOT%out32dll\* del /S /Q %OPENSSL_ROOT%out32.dbg\* del /S /Q %OPENSSL_ROOT%out32dll.dbg\* del /S /Q %OPENSSL_ROOT%out32 del /S /Q %OPENSSL_ROOT%out32dll del /S /Q %OPENSSL_ROOT%out32.dbg del /S /Q %OPENSSL_ROOT%out32dll.dbg del /S /Q %OPENSSL_ROOT%tmp32\* del /S /Q %OPENSSL_ROOT%tmp32dll\* del /S /Q %OPENSSL_ROOT%tmp32.dbg\* del /S /Q %OPENSSL_ROOT%tmp32dll.dbg\* del /S /Q %OPENSSL_ROOT%tmp32 del /S /Q %OPENSSL_ROOT%tmp32dll del /S /Q %OPENSSL_ROOT%tmp32.dbg del /S /Q %OPENSSL_ROOT%tmp32dll.dbg exit /b :end
P.S.: Возможно после конфигурации придётся слегуа поправить make-файлы, поскольку собирают они библиотеку не во всех возможных конфигурациях. Например когда собирается статическая версия OpenSSL, то с С++ CRT она линкуется статически, если же собирается динамическая версия OpenSSL, то она с С++ библиотекой линкуется динамически. Скажем если вы хотите собрать статическую версию OpenSSL, а запользовать её в проекте, линкующимся с CRT динамически, вот тогда и придётся править фалики.
Смотри также: Compiling OpenSSL for Windows, Linux, and Macintosh
а x64 собирали?
ОтветитьУдалитьPavel Pimenov: нет не собирал, как-то не приходилось ... А что там есть траблы?
ОтветитьУдалить