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

牽著老婆滿街逛

嚴以律己,寬以待人. 三思而后行.
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

轉載自: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) 評論(0)  編輯 收藏 引用

青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <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在线视频精品| 快播亚洲色图| 亚洲一区中文| 在线欧美亚洲| 国产精品国产亚洲精品看不卡15 | 亚洲影音先锋| 亚洲福利视频在线| 欧美婷婷久久| 蜜臀久久99精品久久久久久9| 99国产精品久久| 免费成人黄色av| 亚洲欧美日韩国产| 亚洲激情在线播放| 国产视频一区免费看| 欧美日本中文| 久久久久国产一区二区| 在线亚洲精品| 亚洲黄色尤物视频| 久久综合中文字幕| 午夜精品久久久久久久男人的天堂| 影音先锋久久资源网| 国产精品三级视频| 欧美日韩精品伦理作品在线免费观看| 欧美在线观看一区二区三区| aa成人免费视频| 亚洲国产精品久久久久婷婷884 | 亚洲免费中文| 亚洲麻豆av| 亚洲电影免费观看高清完整版在线 | 国产综合自拍| 国产精品久久91| 美女黄色成人网| 久久成人资源| 性高湖久久久久久久久| 日韩午夜激情电影| 亚洲国产欧美日韩另类综合| 久久综合久久综合这里只有精品| 亚洲女爱视频在线| 亚洲视频在线播放| 日韩午夜三级在线| 亚洲日本久久| 最新国产乱人伦偷精品免费网站| 狠狠综合久久av一区二区小说| 国产精品手机在线| 国产精品theporn| 欧美性色aⅴ视频一区日韩精品| 欧美激情亚洲另类| 欧美激情自拍| 欧美日韩成人一区| 欧美日韩视频一区二区| 欧美片网站免费| 欧美美女bbbb| 欧美日韩亚洲一区三区| 欧美日韩一区精品| 国产精品久久久久久久久果冻传媒 | 久久久国产亚洲精品| 欧美一区二区在线免费观看| 欧美亚洲在线观看| 久久国产精品久久久久久电车| 欧美专区在线播放| 久久躁狠狠躁夜夜爽| 久久综合久久综合这里只有精品 | 久久久噜噜噜久久中文字免| 久久久久久精| 欧美高清视频一区二区三区在线观看| 免费亚洲视频| 欧美日韩综合一区| 国产美女精品人人做人人爽| 国产欧美一区二区三区国产幕精品| 国产精品一区毛片| 伊人激情综合| 99re热这里只有精品视频| 亚洲一区二区在线播放| 欧美一区二区在线免费观看| 久久亚洲精品视频| 亚洲激情自拍| 亚洲欧美国产va在线影院| 久久av资源网| 欧美精品123区| 国产精品入口| 在线精品亚洲一区二区| 日韩亚洲欧美综合| 欧美怡红院视频| 麻豆成人小视频| 日韩视频免费在线观看| 午夜激情亚洲| 欧美1级日本1级| 国产精品一区二区久久| 1000部精品久久久久久久久| 中文欧美在线视频| 久久野战av| 9色porny自拍视频一区二区| 欧美专区在线观看一区| 欧美精品乱码久久久久久按摩| 国产精品青草久久| 亚洲激情网址| 久久精品免费电影| 91久久精品一区二区别| 亚欧成人在线| 欧美日韩国产小视频在线观看| 国产日韩免费| 99在线|亚洲一区二区| 久久久久综合网| 一本色道久久综合亚洲精品不 | 欧美精品日韩综合在线| 国产一本一道久久香蕉| 一本色道久久88精品综合| 久久理论片午夜琪琪电影网| 亚洲免费观看高清完整版在线观看| 欧美一区二区三区另类 | 免费看的黄色欧美网站| 国产情人节一区| 一区二区三区视频在线| 麻豆av一区二区三区| 亚洲淫片在线视频| 欧美精品一区二区高清在线观看| 国内精品99| 欧美一区二区在线| 99亚洲精品| 欧美精品久久99| 在线成人www免费观看视频| 午夜在线一区| 9i看片成人免费高清| 欧美国产一区二区| 在线精品视频一区二区| 久久精品30| 亚洲欧美中日韩| 国产精品久久久久影院色老大 | 亚洲激情自拍| 欧美aⅴ99久久黑人专区| 欧美在线日韩| 国产午夜精品一区二区三区视频 | 亚洲一区二区在线视频| 亚洲日韩欧美视频一区| 麻豆91精品| 亚洲高清视频中文字幕| 久久综合色综合88| 久久经典综合| 国模私拍视频一区| 久久久久久久一区二区| 午夜在线一区| 国产在线一区二区三区四区| 久久精品夜色噜噜亚洲aⅴ| 亚洲在线一区| 国产午夜精品一区二区三区视频| 欧美影院在线播放| 欧美在线播放| 亚洲电影一级黄| 亚洲成人在线视频网站| 欧美jizz19性欧美| 99国产精品99久久久久久| 亚洲国产一区二区三区a毛片 | 亚洲每日更新| 国产精品国产a| 亚欧成人在线| 久久成人免费电影| 亚洲福利视频一区| 亚洲精品乱码久久久久久蜜桃91| 欧美国产精品一区| 亚洲天堂第二页| 亚洲宅男天堂在线观看无病毒| 国产精品一区在线播放| 久久久久这里只有精品| 另类尿喷潮videofree| 亚洲另类自拍| 亚洲视频专区在线| 国产亚洲福利| 欧美黄色影院| 欧美特黄一级大片| 久久精品综合一区| 欧美大片18| 午夜精品一区二区三区四区 | 国产美女扒开尿口久久久| 久久网站免费| 欧美日韩国产一中文字不卡| 午夜精品福利在线| 久久免费高清视频| 亚洲视频在线二区| 久久精品91| 夜夜嗨一区二区三区| 西瓜成人精品人成网站| 亚洲国产精品一区二区三区| 一本色道久久综合精品竹菊| 国产字幕视频一区二区| 91久久精品国产91性色tv| 国产精品一区二区三区成人| 女生裸体视频一区二区三区| 欧美视频在线一区二区三区| 久久网站免费| 国产精品久久一卡二卡| 欧美激情视频一区二区三区在线播放|