青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

牽著老婆滿(mǎn)街逛

嚴(yán)以律己,寬以待人. 三思而后行.
GMail/GTalk: yanglinbo#google.com;
MSN/Email: tx7do#yahoo.com.cn;
QQ: 3 0 3 3 9 6 9 2 0 .

Building OpenSSL with Visual Studio

轉(zhuǎn)載自:http://p-nand-q.com/programming/windows/building_openssl_with_visual_studio_2013.html

Building OpenSSL with Visual Studio

New:

  • Now supports both the 1.0.1 and 1.0.2 branch
  • Now supports Visual Studio 2010, 2013 and 2015
  • Now supports both static and dynamic libraries

Downloads

I provide downloads for Visual Studio 2010 and 2015. I had to remove my 2013 installation due to space constraints, but the build files are still there so you can do it, too.

VersionVisual Studio 2010Visual Studio 2015
OpenSSL 1.0.2d32-Bit Release DLL32-Bit Release DLL
 32-Bit Debug DLL32-Bit Debug DLL
 32-Bit Release Static Library32-Bit Release Static Library
 32-Bit Debug Static Library32-Bit Debug Static Library
 64-Bit Release DLL64-Bit Release DLL
 64-Bit Debug DLL64-Bit Debug DLL
 64-Bit Release Static Library64-Bit Release Static Library
 64-Bit Debug Static Library64-Bit Debug Static Library
OpenSSL 1.0.1p32-Bit Release DLL32-Bit Release DLL
 32-Bit Debug DLL32-Bit Debug DLL
 32-Bit Release Static Library32-Bit Release Static Library [broken]
 32-Bit Debug Static Library32-Bit Debug Static Library [broken]
 64-Bit Release DLL64-Bit Release DLL
 64-Bit Debug DLL64-Bit Debug DLL
 64-Bit Release Static Library64-Bit Release Static Library [broken]
 64-Bit Debug Static Library64-Bit Debug Static Library [broken]

Building OpenSSL automatically

Because the process of building OpenSSL is time consuming and error prone, I wrote a couple of batch scripts that simplify the process significantly. You can download them here. Inside, you will find three batch files:

  • rebuild_openssl_vs2010.cmd for use with Visual Studio 2010
  • rebuild_openssl_vs2013.cmd for use with Visual Studio 2013
  • rebuild_openssl_vs2015.cmd for use with Visual Studio 2015

Prerequisites

  • The script assumes you are on Windows.
  • The script assumes you have Visual Studio 2010, 2013 or 2015 installed in all the usual places. Important: If you have a different installation folder, your mileage may vary
  • The script assumes you have downloaded an OpenSSL tarball, like this one.
  • The script assumes you have Python (2.7 or 3.x) installed and on your PATH
  • The script assumes you have 7-zip installed (doesn't need to be on your PATH)
  • Choose the script you want to use and edit it. For example, let's take a look at the top of rebuild_openssl_vs2015.cmd:
    T:
    set OPENSSL_VERSION=1.0.1p
    set SEVENZIP="C:\Program Files\7-Zip\7z.exe"
    set VS2015="C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\bin\vcvars32.bat"
    set VS2015_AMD64="C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\bin\amd64\vcvars64.bat"
    
    so it is pretty easy to see: you must enter the OpenSSL version manually, the rest should have sensible defaults...
  • Note: The script uses the SUBST T:\ drive for building OpenSSL.

Building the OpenSSL binaries

  • Place the tar.gz file (not the unpacked .tar) in the root of T:\
  • Double-click on one of the rebuild_openssl-vs*.cmd.

That's it, it will do all the hard work for you and present nicely packaged binaries. Great fun!

Building OpenSSL manually

OK, so you don't trust me. Right. Well, here is how you can do it manually.... Note: This article wouldn't have been possible without the invaluable help of this article. However, it was obviously not built on a Windows 8 machine, and it didn't include any binaries. So this article follows the same basic structure, but it has some important differences:

  • The instructions default to the DLL build
    Why? because that is the one used by Python. And because I was rebuilding Python, I was rebuilding OpenSSL in the first place. So there.
  • Debug build uses .PDBs

Prerequisites

  • You need Visual Studio 2010, 2013 or 2015.
  • You need to install Perl. I used ActivePerl 5.16.3 for Windows (x86).
  • You need the OpenSSL sourcecode. In the following, both the 1.0.1 and 1.0.2 branches are supported.
  • Unzip the sourcecode.
  • Create two different copies of the sourcecode. I am going to follow the conventions of the original article and create T:\openssl-src-32 and T:\openssl-src-64.
  • You need a development prompt. This varies based on your compiler:
    • Visual Studio 2010, 32-bit: Open Visual Studio Command Prompt (2010)
    • Visual Studio 2010, 64-bit: Open Visual Studio x64 Win64 Command Prompt (2010)
    • Visual Studio 2013, 32-bit: Open CMD.EXE and run C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\bin\vcvars32.bat
    • Visual Studio 2013, 64-bit: Open CMD.EXE and run C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\bin\amd64\vcvars64.bat
    • Visual Studio 2015, 32-bit: Open CMD.EXE and run C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\bin\vcvars32.bat
    • Visual Studio 2015, 64-bit: Open CMD.EXE and run C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\bin\amd64\vcvars64.bat

Building the 32-bit Release DLL

  • Change to the source directory, for example T:\openssl-src-32
  • Run perl Configure VC-WIN32 --prefix=T:\Build-OpenSSL-VC32-Release-DLL. This will make T:\Build-OpenSSL-VC32-Release-DLLyour output directory; it should be fairly obvious how you can change that.
  • Run ms\do_ms
  • If you are on the 1.0.2 branch, you must do the following: Run ms\do_nasm.
    This step is not necessary if you are on 1.0.1
  • Run nmake -f ms\ntdll.mak
  • Run nmake -f ms\ntdll.mak install

Building the 32-bit Debug DLL

  • Change to the source directory, for example T:\openssl-src-32
  • Run perl Configure debug-VC-WIN32 --prefix=T:\Build-OpenSSL-VC32-Debug-DLL
  • Run ms\do_ms
  • If you are on the 1.0.2 branch, you must do the following: Run ms\do_nasm.
    This step is not necessary if you are on 1.0.1
  • Run nmake -f ms\ntdll.mak
  • Run nmake -f ms\ntdll.mak install

Building the 32-bit Release Static Library

  • Change to the source directory, for example T:\openssl-src-32
  • Run perl Configure VC-WIN32 --prefix=T:\Build-OpenSSL-VC32-Release-DLL. This will make T:\Build-OpenSSL-VC32-Release-DLLyour output directory; it should be fairly obvious how you can change that.
  • Run ms\do_ms
  • If you are on the 1.0.2 branch, you must do the following: Run ms\do_nasm.
    This step is not necessary if you are on 1.0.1
  • Run nmake -f ms\nt.mak
  • Run nmake -f ms\nt.mak install

Building the 32-bit Debug Static Library

  • Change to the source directory, for example T:\openssl-src-32
  • Run perl Configure debug-VC-WIN32 --prefix=T:\Build-OpenSSL-VC32-Debug-DLL
  • Run ms\do_ms
  • If you are on the 1.0.2 branch, you must do the following: Run ms\do_nasm.
    This step is not necessary if you are on 1.0.1
  • Run nmake -f ms\nt.mak
  • Run nmake -f ms\nt.mak install

Building the 64-bit Release DLL

  • Change to the source directory, for example T:\openssl-src-64
  • Run perl Configure VC-WIN64A --prefix=T:\Build-OpenSSL-VC64-Release-DLL. This will make T:\Build-OpenSSL-VC64-Release-DLL your output directory; it should be fairly obvious how you can change that.
  • Run ms\do_win64a
  • Run nmake -f ms\ntdll.mak
  • Run nmake -f ms\ntdll.mak install

Building the 64-bit Debug DLL

  • Change to the source directory, for example T:\openssl-src-64
  • Run perl Configure debug-VC-WIN64A --prefix=T:\Build-OpenSSL-VC64-Debug-DLL
  • Run ms\do_win64a
  • Run nmake -f ms\ntdll.mak
  • Run nmake -f ms\ntdll.mak install

Building the 64-bit Release Static Library

  • Change to the source directory, for example T:\openssl-src-32
  • Run perl Configure VC-WIN64A --prefix=T:\Build-OpenSSL-VC64-Release-Static. This will make T:\Build-OpenSSL-VC64-Release-Static your output directory; it should be fairly obvious how you can change that.
  • Run ms\do_win64a
  • Run nmake -f ms\nt.mak
  • Run nmake -f ms\nt.mak install

Building the 64-bit Debug Static Library

  • Change to the source directory, for example T:\openssl-src-64
  • Run perl Configure debug-VC-WIN64A --prefix=T:\Build-OpenSSL-VC64-Debug-DLL
  • Run ms\do_win64a
  • Run nmake -f ms\nt.mak
  • Run nmake -f ms\nt.mak install

FAQ

Why did I need to create two different copies of the sourcecode

Because the OpenSSL build scripts will use the folder outdll32 for both the 32-bit and the 64-bit output, so there is no easy way to distinguish both builds.


GK, December 12, 2015

Note: Special thanks to Alex (see https://github.com/CpServiceSpb/OpenSSLOcsp) for pointing out some mistakes in the documentation of the 64-bit build. Should be fine now.

posted on 2016-06-16 19:06 楊粼波 閱讀(604) 評(píng)論(0)  編輯 收藏 引用


只有注冊(cè)用戶(hù)登錄后才能發(fā)表評(píng)論。
網(wǎng)站導(dǎo)航: 博客園   IT新聞   BlogJava   博問(wèn)   Chat2DB   管理


青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            亚洲欧美日韩中文播放| 亚洲视频大全| 欧美wwwwww| 男女av一区三区二区色多| 亚洲日本免费电影| 亚洲日韩欧美视频一区| 欧美了一区在线观看| 一区二区三欧美| 中国女人久久久| 国产在线播放一区二区三区| 久久网站热最新地址| 欧美国产视频日韩| 亚洲丝袜av一区| 久久黄色级2电影| 亚洲精品在线视频观看| 亚洲一区二区四区| 在线欧美小视频| 一本色道久久综合亚洲精品高清| 国产精品美女黄网| 亚洲第一主播视频| 国产精品xxxxx| 免费成人毛片| 国产精品草莓在线免费观看| 免费观看一区| 国产精品久久久对白| 久久中文字幕一区| 欧美日韩视频| 欧美成人激情在线| 国产精品国产三级国产普通话99 | 亚洲靠逼com| 精品成人一区| 中文精品一区二区三区| 一区二区三区在线不卡| 欧美黄色一区二区| 国产日产精品一区二区三区四区的观看方式 | 亚洲第一伊人| 国产日韩精品一区二区| 亚洲国产精品一区| 9色porny自拍视频一区二区| 影音先锋亚洲精品| 亚洲欧美日韩国产成人精品影院| 99ri日韩精品视频| 久久精品国产久精国产爱| 亚洲天堂免费在线观看视频| 蜜臀av一级做a爰片久久| 久久久人成影片一区二区三区观看 | 欧美视频一区在线观看| 欧美成人黑人xx视频免费观看| 国产精品一香蕉国产线看观看 | 久久久久久穴| 久久精品视频在线看| 国产精品www.| 中文日韩在线视频| 宅男精品导航| 欧美日韩一区高清| 亚洲黄网站在线观看| 亚洲国产精品日韩| 亚洲一级免费视频| 亚洲人成艺术| 欧美成人国产| 亚洲激情成人网| 亚洲精品少妇30p| 欧美精品国产精品| 亚洲美女网站| 亚洲欧美综合国产精品一区| 国产精品草草| 在线亚洲激情| 亚洲女同在线| 国产午夜精品理论片a级探花 | 91久久国产综合久久蜜月精品 | 国产精品久久久亚洲一区| 中文av字幕一区| 欧美亚洲免费| 国产精品一二三四| 欧美一区二区视频网站| 美女性感视频久久久| 激情亚洲网站| 欧美电影在线观看完整版| 亚洲第一中文字幕| 亚洲一区二区三区在线视频| 国产精品久久久久永久免费观看 | 欧美激情一二三区| 99re6这里只有精品视频在线观看| 亚洲视频精选| 国产一区二区精品丝袜| 麻豆精品在线视频| 日韩一级大片在线| 欧美在线一二三| 亚洲国产精品一区二区第一页| 欧美激情一区二区三区高清视频| 99re6热在线精品视频播放速度| 欧美一级理论性理论a| 影音先锋一区| 国产精品久久久久天堂| 久久爱www久久做| 亚洲日韩视频| 久久天天狠狠| 亚洲一区美女视频在线观看免费| 国内精品一区二区三区| 欧美国产日韩在线| 午夜影视日本亚洲欧洲精品| 亚洲国产99| 欧美一区二区三区另类 | 欧美日韩在线亚洲一区蜜芽| 久久精品人人做人人爽电影蜜月| 亚洲动漫精品| 久久久久久网址| 一区二区日韩伦理片| 一区免费观看视频| 国产精品人人做人人爽人人添| 久久综合一区| 欧美一区二区免费| 一本久久a久久精品亚洲| 免费观看一区| 久久成人综合视频| 亚洲私人影院在线观看| 亚洲黄色天堂| 国产一区亚洲| 国产乱码精品一区二区三区不卡 | 亚洲三级毛片| 狠狠色狠狠色综合日日五 | 久久先锋资源| 欧美一区2区三区4区公司二百| 亚洲精选在线观看| 亚洲黄色成人久久久| 久久天天综合| 久久久久九九视频| 久久成人免费日本黄色| 亚洲欧美日韩另类| 亚洲曰本av电影| 一区二区三区国产在线观看| 亚洲毛片在线观看.| 亚洲国产欧美日韩另类综合| 国产综合久久| 国产婷婷精品| 国产日韩专区| 国产亚洲一区精品| 韩国一区二区三区在线观看| 国产精品久久久久免费a∨| 欧美日韩亚洲一区二区| 欧美日韩精品综合| 欧美黄色一区二区| 欧美区一区二| 欧美日韩视频在线一区二区 | 亚洲国产一区在线观看| 亚洲国产精品传媒在线观看| 欧美激情在线有限公司| 亚洲第一精品久久忘忧草社区| 亚洲第一在线综合在线| 亚洲黄一区二区| 99国产麻豆精品| 一本一道久久综合狠狠老精东影业| 一区二区不卡在线视频 午夜欧美不卡在 | 91久久精品美女高潮| 亚洲精品美女在线| 在线亚洲欧美| 羞羞色国产精品| 久久精品网址| 欧美激情1区2区3区| 欧美午夜a级限制福利片| 国产女主播一区| 精品动漫3d一区二区三区免费| 在线观看日韩av| 亚洲天堂免费观看| 久久精品国产99精品国产亚洲性色 | 麻豆成人在线观看| 亚洲国产成人tv| 亚洲一区www| 久久久国产一区二区| 欧美大胆成人| 国产毛片一区二区| 亚洲人体偷拍| 久久九九有精品国产23| 亚洲国产精品va在线看黑人 | 久久久亚洲午夜电影| 欧美美女日韩| 红桃视频成人| 亚洲欧美国产视频| 亚洲第一福利社区| 亚洲午夜免费福利视频| 久久婷婷色综合| 国产精品永久免费视频| 亚洲国内欧美| 欧美中文字幕不卡| 日韩视频在线观看一区二区| 久久激情综合网| 国产精品福利影院| 亚洲老板91色精品久久| 久久―日本道色综合久久| 亚洲精选一区二区| 蜜臀久久99精品久久久画质超高清| 国产精品呻吟| 一本久久青青| 欧美 日韩 国产 一区| 香港成人在线视频| 欧美视频网站| 中文一区二区| 亚洲激情视频在线| 免费在线观看精品| 国产主播一区二区|