• 致命错误: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/
      表示安装成功!


  • 相关阅读:
    MySQL 复制表结构和表数据
    学习使用Guava Retryer
    Maven 常用工具类整理
    转 全面理解Javascript闭包和闭包的几种写法及用途
    Python的全局变量
    python的内存管理机制
    Python 隔离沙箱 virtualenv
    <script> 的defer和async
    高性能Javascript(2) DOM编程
    高性能Javascript(1)
  • 原文地址:https://www.cnblogs.com/gyfluck/p/10530252.html
Copyright © 2020-2023  润新知