mac 編譯安裝php-mongo 擴充套件時報evp.h檔案找不到的解決方案

Betta發表於2019-02-16

mac 編譯安裝php-mongo 擴充套件時報evp.h檔案找不到的解決方案

我在編譯mongo擴充套件的時候 遇到了這個問題:

In file included from /usr/local/mongo-php-driver-legacy/io_stream.c:34:
./contrib/php-ssl.h:33:10: fatal error: `openssl/evp.h` file not found
#include <openssl/evp.h>

問題分析:就是 openssl/evp.h 這個檔案找不到.

解決思路:找一個evp.h檔案放過去.

在本地找一下看有沒有這個檔案:

find / -name evp.h

得到下面的結果:

/opt/vagrant/embedded/include/openssl/evp.h
/usr/local/openssl/include/openssl/evp.h
/usr/src/openssl/include/openssl/evp.h

於是拷貝一個過去:

cp -r /usr/local/openssl/include/openssl /usr/local/mongo-php-driver-legacy/contrib/

再執行 make

顯示:

.......
Build complete. Don`t forget to run `make test`.

問題解決。

說明:

  • 如果你本地沒有找到 evp.h,你需要把系統自帶的opensssl刪除(rm -rf /usr/bin/openssl), 然後重新裝一個最新的openssl,然後將openssl/evp.h 拷貝一份過去

相關文章