Linux靜態編譯OpenSSL與libcurl

2021-10-07 23:46:10 字數 1106 閱讀 9783

某個工程中需要使用libcurl訪問https**,為了可移植性,需要將libcurl編譯成靜態的。由於訪問的是https開頭的**,所以還需加入對openssl的編譯,同樣使用編譯。

git clone

git checkout -b openssl_1_0_0-stable origin/openssl_1_0_0-stable   //分支自己按需選取

git pull

2、./config --prefix=/path/to/openssl -fpic no-shared no-dso no-ssl3    //--prefix指定安裝路徑

3、make depend

4、make

5、make install

按需選擇包版本:進入原始碼目錄。

2、./configure --prefix=/path/to/curl --disable-shared --enable-static --with-ssl=/path/to/openssl --without-libidn --without-librtmp  --without-nss --without-libssh2 --without-zlib --without-winidn --without-gnutls --disable-rtsp  --disable-dict --disable-telnet --disable-tftp --disable-pop3 --disable-imap --disable-smtp --disable-gopher --disable-ldap

3、make

4、make install

需要拷貝的檔案和資料夾如下:

/path/to/openssl/lib/目錄下 libssl.a libcrypt.a

/path/to/openssl/include/openssl 整個目錄

/path/to/curl/lib/目錄下libcurl.a與libcurl.la(libcurl.la可能不需要,可自行驗證一下)

/path/to/curl/include/curl 整個目錄

編譯時記得加上相應的標頭檔案路徑,以及鏈結時加上 -lcurl -lssl -lcrypt.

全文結束。

Linux下shell中採用openssl加密

參考 這篇文章寫得非常好,給滿分 下面附上自己對照著擼出來的 僅僅當作筆記記錄 bin bash password gmengine 123 echo password openssl enc aes 256 cbc s 1ae3b897 out pass.aes pass pass 1231kj1...

不重新編譯PHP給php增加openssl模組記錄

引用 yum y install openssl usr local bin 是php的安裝目錄 切換到php安裝目錄的etx openssl目錄 cd root soft php 5.2.8 ext openssl 引用 usr local bin phpize cannot find confi...

Linux下靜態庫編譯

linux下動態庫檔案的擴充套件名為 so shared object 按照約定,所有動態庫檔名的形式是libname.so 可能在名字中加入版本號 這樣,執行緒函式庫被稱作libthread.so。靜態庫的檔名形式是libname.a。共享archive的檔名形式是libname.sa。共享arc...