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

牽著老婆滿(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>
            久久久久久网址| 亚洲精品久久久蜜桃| 欧美一区二区免费| 99精品视频免费观看| 欧美成人小视频| 久久在线视频| 欧美 日韩 国产精品免费观看| 久久夜色精品| 欧美电影免费观看高清| 欧美粗暴jizz性欧美20| 一区视频在线播放| 亚洲美女黄色片| 亚洲综合视频网| 亚洲欧洲精品一区二区三区 | 国产精品久久久一区二区三区| 欧美14一18处毛片| 欧美激情网站在线观看| 欧美精品在线免费播放| 国产精品女同互慰在线看| 国产日产欧美一区| 91久久精品国产91久久性色tv| 一本久久精品一区二区| 午夜久久久久久| 欧美刺激午夜性久久久久久久| 亚洲精选在线| 久久都是精品| 欧美日韩视频在线第一区| 国内精品久久久久国产盗摄免费观看完整版 | 国产一区二区看久久| 亚洲国内自拍| 亚洲欧美一区二区视频| 欧美高清成人| 欧美一区二区免费观在线| 欧美另类极品videosbest最新版本| 国产精品一区二区三区成人| 亚洲黄色一区| 久久久久五月天| avtt综合网| 欧美成人一区二免费视频软件| 国产精品稀缺呦系列在线| 亚洲人www| 久热re这里精品视频在线6| 宅男66日本亚洲欧美视频| 蜜臀av一级做a爰片久久| 国产日韩欧美视频在线| 亚洲天堂男人| 亚洲国产三级在线| 亚洲女优在线| 国产精品ⅴa在线观看h| 日韩一级黄色大片| 欧美成人亚洲成人日韩成人| 欧美亚洲一区三区| 国产精品老牛| 亚洲小说欧美另类婷婷| 玖玖玖国产精品| 国产欧美一区二区精品秋霞影院 | 一本色道久久综合亚洲精品不卡 | 另类专区欧美制服同性| 国产欧美三级| 妖精视频成人观看www| 久久久久在线观看| 亚洲一区二区三区视频| 欧美色区777第一页| 日韩视频在线观看国产| 亚洲激情视频在线播放| 欧美福利视频| 日韩西西人体444www| 亚洲日本欧美日韩高观看| 欧美电影免费观看| 亚洲精品系列| 日韩一级精品| 国产精品视频九色porn| 久久精品成人欧美大片古装| 西瓜成人精品人成网站| 国产亚洲一本大道中文在线| 久久久久国产精品一区| 久久久一二三| 亚洲欧洲在线视频| 91久久夜色精品国产九色| 欧美日韩1区| 亚洲欧美在线看| 久久爱另类一区二区小说| 一区在线观看| 亚洲激情av| 国产精品高潮视频| 久久激情综合网| 猫咪成人在线观看| 中国女人久久久| 午夜精品亚洲一区二区三区嫩草| 国产一区二区三区久久精品| 蜜桃久久av一区| 欧美久久婷婷综合色| 西西裸体人体做爰大胆久久久| 欧美亚洲日本国产| 亚洲国产精品久久久久婷婷老年| 亚洲精品一区二区三区在线观看| 久久亚洲电影| 欧美连裤袜在线视频| 先锋影音网一区二区| 久久久精品日韩欧美| 这里只有精品视频| 性做久久久久久久久| 亚洲精品午夜| 欧美在线播放视频| 一本色道久久综合亚洲精品高清 | 一区二区三区精品国产| 亚洲欧美一区二区精品久久久| 亚洲国产精品va在线看黑人动漫 | 欧美高清在线播放| 国产精品美女一区二区| 女人色偷偷aa久久天堂| 国产精品日韩欧美一区| 亚洲人精品午夜在线观看| 激情综合色综合久久综合| 一本色道久久99精品综合| 欧美乱妇高清无乱码| 一区二区在线看| 一个色综合av| 亚洲三级免费观看| 久久久99爱| 午夜免费日韩视频| 欧美成人免费网| 老牛影视一区二区三区| 国产精品久在线观看| 亚洲久久在线| 亚洲乱码国产乱码精品精98午夜 | 欧美精品粉嫩高潮一区二区 | 亚洲日本aⅴ片在线观看香蕉| 亚洲免费在线看| 亚洲主播在线播放| 欧美精品乱人伦久久久久久 | 性做久久久久久| 午夜精品久久久久久99热| 欧美无乱码久久久免费午夜一区 | 久久久www免费人成黑人精品| 午夜精品成人在线| 99国产精品久久久久老师| 久久9热精品视频| 欧美日本在线视频| 欧美sm视频| 韩日精品中文字幕| 亚洲欧美在线aaa| 亚洲综合首页| 欧美私人啪啪vps| 在线亚洲欧美视频| 亚洲综合电影| 国产乱码精品一区二区三区忘忧草 | 免费观看成人网| 欧美成人午夜激情在线| 亚洲欧洲综合| 欧美精品aa| 亚洲在线网站| 久久久久综合一区二区三区| 国内外成人免费视频| 久久精品国产99国产精品澳门| 另类综合日韩欧美亚洲| 一区在线播放视频| 欧美激情1区| 在线视频欧美日韩| 久久精品国产99精品国产亚洲性色| 国产一区二区三区高清播放| 嫩草国产精品入口| 一区二区日韩欧美| 久久精品卡一| 亚洲精品美女免费| 国产精品嫩草影院av蜜臀| 久久狠狠亚洲综合| 亚洲视频播放| 国产精品视频yy9299一区| 午夜精品久久久久久久99水蜜桃| 久久精品在这里| 亚洲精品国产精品国产自| 欧美色综合网| 久久久高清一区二区三区| 亚洲国产影院| 欧美在线视频一区二区三区| 亚洲高清三级视频| 欧美日韩一区二区三区在线观看免| 亚洲一区影音先锋| 亚洲国产91色在线| 欧美一区二区在线免费观看| 亚洲国产99精品国自产| 国产精品福利av| 免费亚洲视频| 欧美一区二区高清在线观看| 亚洲精品护士| 免费毛片一区二区三区久久久| 亚洲午夜一级| 亚洲欧洲综合另类| 精品91在线| 国产日产欧产精品推荐色| 欧美色欧美亚洲另类二区| 欧美gay视频激情| 性欧美大战久久久久久久免费观看| 亚洲欧洲日韩女同| 美女999久久久精品视频| 性欧美xxxx视频在线观看| 亚洲视频免费| 日韩视频一区二区三区在线播放免费观看| 国产欧美日韩在线观看|