1. 程式人生 > >編譯支援https的curl

編譯支援https的curl

最近專案的http服務要轉成更加安全的https,發現替換libcurl庫還是比較麻煩的,整個過程耗費了幾天時間,所以記下筆記,以防將來忘記。

環境:win7 64位 + vs2012

下載 openssl

官網下載後解壓,記得新增環境變數

注意:開始下載的openssl-OpenSSL_1_1_0e, ms目錄下檔案不全,安裝老是失敗,沒辦法換的openssl-1.0.2k版本

下載 ActivePerl:

地址:https://www.activestate.com/activeperl/downloads   因為要相容32位  我下載的x86版本

安裝ActivePerl:

直接點選下一步完成即可。

安裝dmake:

如果報錯sqlite3結構破壞, 刪除

C:\Users\%USERNAME%\AppData\Local\ActiveState\ActivePerl 目錄下的檔案

重新執行,成功

安裝nasm:

直接點選下一步完成即可。

編譯openssl:  

(1)開啟vs工具下命令列跳轉到openssl目錄執行:

perl Configure VC-WIN32 --prefix=H:\test_https


(2)執行nasm編譯器


編譯動態庫

執行: nmake -f ms\ntdll.mak 

執行:  nmake -f ms\nt.mak install 

編譯靜態庫

:

nmake -f ms\nt.mak

nmake -f ms\nt.mak install 

這兩步編譯時間稍長

(3)開啟安裝目錄:


檢視編譯成功的include 和 lib庫(這兩個靜態庫在編譯靜態版本的時候還要使用)。

(4)開啟H:\lh_server\curl-7.49.1\curl-7.49.1\projects\Windows目錄,我是vs2012,開啟VC11裡面的工程



(5)專案匯入之前編譯的庫和include檔案目錄.


(6)選擇自己需要的編譯方式編譯,得到libcurl.lib和相應的dll檔案


(7)拷貝include和生成的庫檔案到自己的工程.

這裡需注意一點:靜態庫版本,在編譯後使用的時候還要將前面編譯成功的(libeay32.lib, ssleay32.lib)一併帶入新工程引用,在預處理還需加入CURL_STATICLIB

,不然會得到一堆無法解析的外部符號的錯誤,動態庫版本不需要,如下圖所示


相關推薦

Boost 1.59.0 編譯支援Python3的連結庫,生成vc120或vc140

Boost 1.59.0 編譯支援Python3的連結庫,生成vc120或vc140 官方編譯的Boost中只帶了Python2的連結庫,Python3的連結庫需要自己特別編譯,官方編譯版下載地址:http://sourceforge.net/projects/boost/files/boo

VTK原始碼編譯(VS2013編譯支援Qt的VTK庫)

VTK原始碼編譯詳細教程(VS2013編譯支援Qt的VTK庫) 本文主要用於編譯支援Qt的 VTK8.0 庫,重點在於編譯VTK庫,供Qt呼叫。 第1步:新建一個資料夾:vtkDir 第2步:在該資料夾下新建兩個資料夾vtk_bin、vtk_src 第3步:將下載好的VT

WebRTC Windows版編譯(支援H264+OpenSSL)

摘要     本文介紹了在Windows下編譯WebRTC的方法,WebRTC預設支援VP8、VP9(谷歌自己的編碼)和BoringSSL(谷歌的OpenSSL分支,主要修復一些OpenSSL主線的漏洞),本文將介紹在Windows下讓WebRTC支援使用更廣泛的H264、Op

xmake新增對Cuda程式碼編譯支援

最近研究了下NVIDIA Cuda Toolkit的編譯環境,並且在xmake 2.1.10開發版中,新增了對cuda編譯環境的支援,可以直接編譯*.cu程式碼。 下載安裝好Cuda SDK後,在macosx上回預設安裝到/Developer/NVIDIA

為Android平臺編譯支援OpenCL的Opencv靜態庫

Opencv中封裝了OpenCL,直接下載的Opencv4Android SDK中提供了一些相關的庫,我們可以利用nm命令檢視這些庫是否包含opencl的相關函式。ocl整合在core中,所以我們直接檢視libopencv_core.a這個庫。 nm -D

給Tengine新增模組編譯支援http2協議

1、首先升級openssl包,支援ALPN協議,我使用的是1.0.2o這個版本 https://www.openssl.org/source/ 官網可以下載。 2、安裝openssl,下載tag.gz壓縮包,解壓縮 make & test 測試  make

編譯支援https的curl

最近專案的http服務要轉成更加安全的https,發現替換libcurl庫還是比較麻煩的,整個過程耗費了幾天時間,所以記下筆記,以防將來忘記。 環境:win7 64位 + vs2012 下載 openssl 官網下載後解壓,記得新增環境變數 注意:開始下載的openssl

linux下編譯支援librtmp、libx264、libfaac的ffmpeg

下載原始碼 編譯 1. librtmp cd rtmpdump make make install 2. yasm cd yasm ./configure --prefix=/usr/local/yasm make make ins

Ubuntu+NDK編譯支援HTTPS的libcurl

參考文章: 1.NDK環境配置 http://blog.csdn.net/smfwuxiao/article/details/6587709 2.libcurl的配置修改 http://piggyq.com/pen/compile-libcurl-and-openssl-

開啟Jasper的JSP預編譯支援

    不少Java Web容器(如Tomcat, Jetty等等)都採用Apache Jasper作為其JSP容器,用它來對JSP檔案進行編譯,呼叫由JSP編譯成的Servlet等。在這類Web容器中,只要將jsp檔案按副檔名對映到org.apache.jasper.ser

Hadoop2.7.3 編譯 支援5種壓縮

導讀:       按部落格中的操作步驟操作後,hadoop 編譯完成後可以支援5種本地壓縮:zlib、snappy、lz4、bzip2、openssl 筆者環境配置為:JDK1.8、Hadoop2.7.3,Hive2.3.0,你也可以使用其它版本,注意版本

編譯支援hive的spark assembly

原生的spark assembly jar是不依賴hive的,如果要使用spark hql必須將hive相關的依賴包打到spark assembly jar中來。打包方法: 假設已經裝好了maven, 1新增環境變數,如果jvm的這些配置太小的話,可能導致在編譯過程中出現O

Spark 2.2原始碼編譯 & 支援hadoop-2.6.0-cdh5.7.0

JDK & Maven & Scala & Git軟體安裝 & 前置準備 編譯Spark原始碼的前置要求: Maven 3.3.9 or newer Java 8+ Scala Git(後文會通過分析make-d

NDK編譯支援C++11

APP_CPPFLAGS += -std=c++11 // APP_CPPFLAGS += -std=gnu++11 NDK_TOOLCHAIN_VERSION=4.8 APP_STL=gnustl_

caffe 02 win10 vs2015 編譯(支援GPU)

01 必備環境 win10企業版,有GPU的硬體。 vs2015 update3、cmake 3.7.2。 git、python3.5.3、CUDA8.0、cuDNN5.1。 CUDA_PATH=C:\Program Files\NVIDIA G

android全平臺編譯ffmpeg支援命令列實踐

本例基於 android全平臺編譯ffmpeg合併為單個庫實踐 進行的 目錄 環境準備 新建cmd工程 修改原始檔 執行輸出 環境準備 作業系統 ubuntu 16.05 編譯準備好libffmpeg庫和需要include標頭檔案,我們

linux之讓終端支援C++11/14編譯cpp檔案

1  問題 我們的專案很多智慧指標,但是我linux的終端肯定不支援C++11/14, 我們平時都是用的下面的命令編譯c++檔案 g++ -g file.cpp -o file  r 如果是用c++11編譯需要改成如下 g++ -g -Wall -std=c+

Ubuntu 14 04 64位機上不帶CUDA支援的Caffe配置編譯操作過程

分享一下我老師大神的人工智慧教程!零基礎,通俗易懂!http://blog.csdn.net/jiangjunshow 也歡迎大家轉載本篇文章。分享知識,造福人民,實現我們中華民族偉大復興!        

[PYTHON]_ELVE_Python原始碼檔案編譯成可執行檔案(支援macOS High Sierra和window 10)

#0x01 背景 這兩天寫了一個抽獎的Python指令碼,要生成可執行檔案,總不能一直在sublime上執行吧,或者執行前先安裝Python,所以就查了一下怎麼生成可執行檔案,本篇包括mac下和win下,經本人測試,mac下生成.app(mac下的可執行檔案為.app字尾)較win下容易一些。 我用的Py

原始碼編譯安裝swoole,並讓php支援swoole

第一步:下載swoole    : git  clone https://gitee.com/swoole/swoole.git 第二步:進入下載目錄。輸入phpize(phpize是在php/bin/phpize) phpize擴充套件php的擴充套