致命錯誤:ext/standard/php_smart_str.h:沒有那個文件或目錄


致命錯誤:ext/standard/php_smart_str.h:沒有那個文件或目錄


 

參考文章:https://blog.csdn.net/jartins/article/details/80371257


 

一、發生背景:

  安裝php-redis擴展時,打開php官網下載擴展,選擇了版本redis-2.2.5.tgz。

  下載路徑是:https://pecl.php.net/get/redis-2.2.5.tgz。
  然后使用make編譯時,報錯:

...
...,致命錯誤:ext/standard/php_smart_str.h:沒有那個文件或目錄
...
編譯中斷。
make: *** [redis.lo] 錯誤 1

二、原因:

  在網上搜索后,得到的說法是:

    因為最新的 phpredis 分了幾大分支,針對最新的PHP穩定發行版 php7 有專門為php7的分支,
    所以我們從github拉下phpredis 源碼。


三、解決:

  (1)然后打開github,搜索phpredis。
    點擊搜索結果的第一個:phpredis/phpredis(https://github.com/phpredis/phpredis)
    點擊頁面中的releases(https://github.com/phpredis/phpredis/releases)
    選擇最新版本4.3.0(https://github.com/phpredis/phpredis/archive/4.3.0.tar.gz)

  (2)下載:
    wget https://github.com/phpredis/phpredis/archive/4.3.0.tar.gz
  (3)重命名
    (個人習慣:下載后文件叫4.3.0.tar.gz,只有版本沒有名字,重命名一下,phpredis-4.3.0.tar.gz)
    mv 4.3.0.tar.gz phpredis-4.3.0.tar.gz
  (4)解壓
    tar -zxvf phpredis-4.3.0.tar.gz
  (5)進入目錄
    cd phpredis-4.3.0
  (6)使用phpize解壓
    phpize
  (7)配置
    ./configure --with-php-config=/usr/local/php7/bin/php-config
  (8)編譯
    make
  (9)安裝
    make install
  安裝結果:
  Installing shared extensions: /usr/local/php7/lib/php/extensions/no-debug-non-zts-20180731/
  表示安裝成功!


 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM