添加链接
link之家
链接快照平台
  • 输入网页链接,自动生成快照
  • 标签化管理网页链接

I followed the instructions outlined here:

Ran sudo pecl install intl

selected the correct files from the Cellar

then this error happened:

/private/tmp/pear/temp/intl/intl_error.h:24:10: fatal error:

'ext/standard/php_smart_str.h' file not found

include

^ 1 error generated. make: *** [php_intl.lo] Error 1 ERROR: `make' failed

No matter, did some research and found out that PHP 7.0.8 deprecated php.smart_str.h to php.smart_string.h

So given my scant knowledge of C++ I copied smart_string.h to smart_str.h and renamed all the headers from STRING to string.....

re-ran pecl -no luck....more errors......without knowing where the .c files are and remaking php (not really interested in going that far) since anyway I'm using XAMPP so that ended that option.

I have php 5.5 on my mac, deep in the usr/local/bin folder

so next step was to get pecl to use those files and generate an intl.so file....

Did that....I have the intl.so file so put it in the 'extensions' folder in XAMPP (for reference: /Applications/XAMPP/xamppfiles/lib/php/extensions/no-debug-non-zts-20151012)

Ran php and came up with this error:

Warning: PHP Startup: Unable to load dynamic library

'/Applications/XAMPP/xamppfiles/lib/php/extensions/no-debug-non-zts-20151012/intl.so'

- dlopen(/Applications/XAMPP/xamppfiles/lib/php/extensions/no-debug-non-zts-20151012/intl.so,

9): Symbol not found: _zval_used_for_init Referenced from:

/Applications/XAMPP/xamppfiles/lib/php/extensions/no-debug-non-zts-20151012/intl.so

Expected in: flat namespace in

/Applications/XAMPP/xamppfiles/lib/php/extensions/no-debug-non-zts-20151012/intl.so

in Unknown on line 0

I imagine it has to do with different versions?

In any case I can't get pecl to install intl without a make error in PHP 7.0.8 on XAMPP. There is no documentation on this and you'd think that if you deprecate a header.h file you'd update all extensions?

Install intl.so in PHP 7 seems impossible?

So far, it seems that extension intl.so for php is bundled with php

and should be compiled with php (intl --enabled). XAMPP does not support this (as of Oct 2016), MAMP does. I do not know about other distros. However, if you're willing to recompile PHP 7, it's worth it just to do that and enable it during compiling.

So....I ran with MAMP. Then I decided that I would simply install apache 2.4 and php 7 and Mysql without the stack and the junk that comes with MAMP or XAMPP and everything works like a charm... so if you need to use CakePHP or intl support etc... just drop XAMPP/MAMP and go with a standard install. I used homebrew (MacOS) and everything is working fine.

Update: As regards Windows, XAMPP does not default it, but you can add the module (dll) in php.ini and works like a charm

I followed the instructions outlined here:Ran sudo pecl install intlselected the correct files from the Cellarthen this error happened:/private/tmp/pear/temp/intl/intl_error.h:24:10: fatal error:'ext/...
最近打算系统的阅读 PHP 7源代码,在看代码之前还是准备先系统复习一遍 PHP 语言,虽然已经用了几年了,但是并不算精通,所以先翻译一下Github上的 php 编码标准文档,原文如下: https://github.com/ php / php -src/blob/master/CODING_STANDARDS.md 下面列举了一些标准,想在 PHP 源码中做修改或新增代码的程序员应该遵守这些标准。因为这个标准在 PHP 3.0版本才出台,基础的代码并没有完全遵守规则,不过之后的新特性都遵守这个规则。此外还有一些部
大家好上次我们聊过brew 安装 方式,那我们今天就聊聊编译 安装 ,我们今天就 安装 一下Stomp 扩展 安装 过程中发现了一个小问题,版本过低的话 php 7会报错。 这个是stomp-1.0.5版本 gongzgiyangde Mac Book-Air:stomp-1.0.5 gongzhiyang$ make && make install /bin/sh /usr/local/opt/stom...
linux下 php 扩展 的正确 安装 方法:1、下载并解压 扩展 文件;2、进入解压文件目录,检查系统配置;3、执行【make && make install】命令 安装 扩展 即可。 方法一:编译 安装 (学习视频推荐:linux视频教程) 具体步骤: //下载文件 #wget http://pecl. php .net/get/zip-1.12.4.tgz //解压文件 #tar zxfv zip-1.12.4.tgz //进入到解压文件目录 #cd zip-1.12.4 //检查系统配置开始配置,指定 安装
hecking whether -lc should be explicitly linked in... no checking dynamic linker characteristics... GNU/Linux ld.so checking how to hardcode library paths int o progra...
PHP 7 安装 memcached报错提示: memcached-2.2.0/ php _memcached_private.h:44:40: fatal error: ext/standard/ php _smart_str.h: No such file or directory #include
详细说明下: cd /fujieace/ php 7.0 /ext/ int l;#进入 INT L 扩展 目录? 在编译 扩展 时候需要 php ize准备环境,准备程序需要获取这个目录的文件 mv config0.m4 config.m4; #重命名config0.m4?如果没有config.m4 就需要重新命名一下 /fujieace/ php 7/bi... apt-get update apt-get -y install software-properties-common add-apt-repository ppa:ondrej/ php apt-get update # 安装 PHP 5.6 apt-get -y install php 5.6 # 安装 常见的 扩展 apt-get -y install php 5.6-mysql php 5.6-curl php 5.6-gd php 5.6- int l php 5.6-mcrypt php 5.6-sqlite3 php 5.6-tidy php 5.6-xmlrpc php 5.6-xsl # 安装 Composer curl -sS https://getcomposer.org/installer | php mv composer.phar /usr/local/bin/composer 该脚本首先更新软件包列表,然后通过添加 PPA 来 安装 PHP 5.6。接着,它 安装 了一些常用的 PHP 扩展 ,并最后 安装 了 Composer。 你可以将此脚本保存为 `install- php 56.sh` 文件,并使用以下命令运行: ```bash chmod +x install- php 56.sh ./install- php 56.sh 请注意,该脚本可能需要在具有 sudo 权限的用户下运行。如果需要,你可以在脚本中添加 `sudo` 命令来获取必要的权限。