2016-08-18 3 views
2

에 XAMPP에 PHP 7.0 국제화 확장 (국제)를 설치 나는 지침은 여기에 설명 된 다음에 ,

/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 

아무리을 몇 가지 조사를했고, PHP는 D를 7.0.8 것을 발견 : 오류가 발생 eprecated php.smart_str.h는 php.smart_string.h하는

그래서 ..... C의 내 부족한 지식 ++ 내가 smart_str.h 할 smart_string.h 복사 및 문자열 STRING의 모든 헤더의 이름을 변경 주어진

re-ran pecl - no luck .... 더 많은 오류 ...... .c 파일이 어디에 있는지 알지 못하고 어쨌든 나는 XAMPP를 사용하고 있기 때문에 PHP를 다시 작성한다. 선택권.

나는 .... 깊은 그래서 다음 단계는이 파일을 사용하고 intl.so 파일을 생성 할 수 PECL을 얻을 수 있었다 usr/지방/bin 폴더에, 내 Mac 5.5 PHP

가나요이 .... intl.so 파일이 있으므로 XAMPP의 'extensions'폴더에 넣으십시오 (참조 :/Applications/XAMPP/xamppfiles/lib/php/extensions/no-debug-non-zts-20151012)

는 PHP를 실행하고이 오류를 내놓았다 :

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

내가 그것을 다를과 관련이있다 상상 버전?

어쨌든 나는 PHP 7.0.8에서 XAMPP의 make error없이 int를 인스톨 할 수 없다. 이것에 대한 문서가 없기 때문에 header.h 파일을 비난한다면 모든 확장을 업데이트 할 것이라고 생각할 것입니다. PHP를위한 PHP 와 함께 번들로 제공되며 (--enabled 국제) PHP를 컴파일해야 intl.so

은 그 확장 보인다, 내가 지금까지

답변

1

PHP 7 intl.so 설치 도와주세요. XAMPP는 이것을 지원하지 않습니다 (2016 년 10 월 현재). MAMP는 이것을 지원합니다. 나는 다른 배포판에 대해 모른다. 그러나 PHP 7을 재 컴파일하려는 경우 컴파일하는 동안 PHP 7을 사용하는 것이 좋습니다.

그래서 .... 나는 MAMP와 함께 달렸다. 그렇다면 나는 단순히 아파치 2.4와 PHP 7과 Mysql을 스택과 MAMP 나 XAMPP와 함께 제공되는 정크없이 설치하고 모든 것이 매력처럼 작동하도록 결정했다. 그래서 CakePHP 나 intl 지원 등을 사용해야한다면 ... 그냥 XAMPP/MAMP를 드롭하고 표준 설치로 가십시오. 나는 homebrew (MacOS)를 사용했으며 모든 것이 잘 작동합니다.

업데이트 : 윈도우에 관해서는, XAMPP는 기본하지 않습니다,하지만 당신은 마법처럼 php.ini 파일에서 모듈 (DLL)를 추가하고 작동 할 수