64位系统上编译PHP找不到库文件有关问题
64位系统下编译PHP找不到库文件问题
最近在64位系统上编译5.4.5版的PHP时,遇到报以下错:
checking for DSA_get_default_method in -lssl... yeschecking for X509_free in -lcrypto... yeschecking for pkg-config... /usr/bin/pkg-configconfigure: error: Cannot find OpenSSL's libraries
指定的编译参数:
./configure \--prefix=/usr/local/services/php-5.4.5 \--with-config-file-path=/usr/local/services/php-5.4.5/etc \--enable-fpm \--enable-mbstring \--enable-soap \--enable-sockets \--enable-zip \--with-curl=/usr \--with-mysql=mysqlnd \--with-mysqli=mysqlnd \--with-pdo-mysql=mysqlnd \--with-gd \--with-jpeg-dir=/usr \--with-png-dir=/usr \--with-zlib-dir=/usr \--with-freetype-dir=/usr \--with-openssl=/usr
找不到openssl的库文件,但我明明有安装openssl-devel的,很奇怪,网上搜了一下,发现有很多朋友,遇到了同样的问题,有些人说--with-openssl不指定路径可解决,尝试了一下,的确编译通过了,但想不通,Why?后来,又搜了一些文章来看,终于找出问题的根源:安装的系统是64位的,而64位的用户库文件默认是在/usr/lib64,而我编译的时候,没有指定--with-libdir=lib64,而编译脚本默认是lib,这当然是找不到的。
将编译参数更改为:
./configure \--prefix=/usr/local/services/php-5.4.5 \--with-config-file-path=/usr/local/services/php-5.4.5/etc \--enable-fpm \--enable-mbstring \--enable-soap \--enable-sockets \--enable-zip \--with-curl=/usr \--with-mysql=mysqlnd \--with-mysqli=mysqlnd \--with-pdo-mysql=mysqlnd \--with-gd \--with-jpeg-dir=/usr \--with-png-dir=/usr \--with-zlib-dir=/usr \--with-freetype-dir=/usr \--with-openssl=/usr \--with-libdir=lib64
问题解决。

熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

Video Face Swap
使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

熱工具

記事本++7.3.1
好用且免費的程式碼編輯器

SublimeText3漢化版
中文版,非常好用

禪工作室 13.0.1
強大的PHP整合開發環境

Dreamweaver CS6
視覺化網頁開發工具

SublimeText3 Mac版
神級程式碼編輯軟體(SublimeText3)

Nginx是一款廣泛應用於Web伺服器、負載平衡器、反向代理程式和快取的軟體。在網路傳輸過程中,資料的加密和安全性越來越受到關注。為了提高通訊的安全性,可以使用OpenSSL函式庫來實現SSL/TLS協議,從而保護敏感資料的傳輸。本文將說明如何使用Nginx與OpenSSL函式庫實現更安全的通訊。安裝與設定OpenSSL函式庫首先,需要在伺服器上安裝OpenSSL函式庫。可以使

電腦裡enable是指的是啟用或啟動某個功能或選項的意思,在電腦領域,enable通常用來描述在軟體或硬體中啟用某種功能或選項的過程。詳細介紹:1、在軟體方面,enable通常指的是在應用程式或作業系統中啟用某個功能;2、在硬體方面,enable通常指的是在電腦系統中啟用某個裝置或介面。

如何使用OpenSSL產生MySQLSSL憑證簡介:MySQL是一種廣泛應用的關係型資料庫系統,在實際生產環境中使用SSL(SecureSocketsLayer)協定進行加密通訊是非常重要的。本文將介紹如何使用OpenSSL工具產生MySQLSSL證書,並提供對應的程式碼範例。步驟:安裝OpenSSL:首先,確保電腦上已安裝O

LINUX作為一個開源作業系統,有著廣泛的應用和使用者群體,CentOS7是LINUX的一個分支版本,它是基於RedHatEnterpriseLinux(RHEL)原始碼構建的,具有高度的穩定性和安全性,在CentOS7上安裝和配置OpenBLAS和OpenSSL是許多開發者和系統管理員的常見需求,本文將詳細介紹如何在CentOS7上安裝和設定OpenBLAS和OpenSSL。 OpenBLAS是一個開源的基於BLAS(BasicLinearAlgebraSubprograms)介面的高效能數學庫,

在Ubuntu系統上使用vsftpd搭建FTP伺服器,您可以依照下列步驟進行:安裝vsftpd:開啟終端,並執行下列指令安裝vsftpd:sudoaptupdatesudoaptinstallvsftpd設定vsftpd:使用文字編輯器(如nano或vi)開啟vsftpd的設定檔案:sudonano/etc/vsftpd.conf在設定檔中,您可以根據需要進行以下變更或新增:啟用匿名存取(如果需要):anonymous_enable=YES停用匿名上傳(如果需要):anon_upload

我們中的許多人在Python 程式碼中一遍又一遍地看到這個程式碼片段:with open('Hi.text', 'w') as f: f.write("Hello, there") 但是,我們中的有些人不知道with 有什麼用,以及為什麼我們需要在這裡使用它。在此閱讀中,您將找到關於 with 可解決的幾乎所有問題。讓我們開始吧!首先,讓我們考慮一下如果不使用 with 關鍵字我們需要做什麼。在這種情況下,我們需要先開啟檔案並嘗試執行 write。不管成功與否,我們最好在

說到OpenSSL,首先要提的是SSL。我們在日常上網的時候,恐怕沒有人願意被網路上的其他人監聽到我們的上網行為。因此就需要一種協定為我們的網路通訊保駕護航。 SSL協定是基於這樣的工作背景開發的,它能使用戶跟伺服器應用之間的通訊不被攻擊者竊聽,並且始終對伺服器進行認證,可選擇的對使用者進行認證。 SSL協定通常建立在可靠的傳輸層協定(TCP)之上。 SSL協定的優點在於它是與應用層協定獨立無關的,高層的應用層協定(例如:HTTP,FTP,TELNET等)能透明地建立於SSL協定之上。 SSL協定在應用

1.概述目前爆出了openssl漏洞,會洩漏隱私訊息,涉及的機器較多,環境迥異,導致修復方案都有所不同。不少伺服器使用的nginx,是靜態編譯opensssl,直接將openssl編譯到nginx裡面去了,這就意味著,單純升級openssl是沒有任何效果,nginx不會載入外部的openssl動態連結函式庫的,必須將nginx重新編譯才可以根治。 2.辨識nginx是否為靜態編譯的以下三種方法都可以確認nginx是否靜態編譯openssl。 2.1查看nginx編譯參數輸入以下指令,查看nginx的編譯
