Khi bạn gặp lỗi bên dưới khi cài đặt extension Intl bằng PECL thì bạn có thể thử cách sau.
1 |
1 error generated. make: *** [php_intl.lo] Error 1 ERROR: `make' failed |
Lưu ý: các bạn nên thử cho version mới nhất của php nếu thấy không có hiệu quả thì hạ phiên bản php xuống. Trong ví dụ này là mình dùng cho php 7.3.31 vì phiên bản 7.4.25 và 8 bị lỗi unicode library. Nếu bạn nào có thể sửa được trong source để build thành công thì có thể email mình update hoặc share cho mọi người thêm.
Cách 1. Khi bạn search trên mạng là install Php-intl thì sẻ được hướng dẫn những dòng lệnh sau
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 |
which php Nếu xuất hiện đường dẫn đến php của XAMPP như bên dưới thì được. /Applications/XAMPP/xamppfiles/bin/php Nếu xuất hiện như bên dưới này thì cần đặt lại đường PATH /usr/bin/php Đặt lại đường PATH như bên dưới. PATH="/Applications/XAMPP/xamppfiles/bin:${PATH}" Cài đặt icu4c brew install icu4c Update peel sudo pecl update-channels Cài đặt Intl sudo pecl install intl Nếu ở bước này thành công không báo lỗi như ở đầu bài thì sử dụng dòng lệnh bên dưới để kiểm tra lại. Coi như xong php -m | grep intl #should return 'intl' |
Nếu trường hợp xui hơn báo lỗi thì bạn cần lấy php đúng với version trong XAMPP mà build Intl từ source của php. Bạn có thể lấy như link bên dưới
https://www.php.net/downloads.php
Bạn vẫn phải kiểm tra xem php PATH có trỏ về XAMPP của mình không. Nếu không thì gán lại, ở trên mình có hướng dẫn.
Sau khi download source php đúng với version của XAMPP xong thì bắt đầu build. Lý do cho việc này là vì XAMPP không support thư viện này. Các bước như sau:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 |
Giải nén php source mà mình vừa download về, nếu dùng lệnh này mà không work thì bạn có thể vào thư mục ~/Download mà giải nén luôn. Không cần cầu kỳ chi cho mệt. tar -xzvf php-7.3.31.tar.gz Đi vào thư mục vừa giải nén. Vì đây mình dùng phiên bản 7.3.31 nên thư mục sẻ là 7.3.31. cd php-7.3.31/ext/intl/ Chạy các dòng lệnh build và cài đặt extension này. /Applications/XAMPP/bin/phpize ./configure --enable-intl --with-php-config=/Applications/XAMPP/bin/php-config --with-icu-dir=/Applications/XAMPP/xamppfiles/ make sudo make install Nếu thành công thì vào file /Applications/XAMPP/xamppfiles/etc/php.ini thêm dòng extension=intl.so này vào. Restart lại Apache là xong. Nếu xui phiên bản php lấy về không build được ngay dòng make thì một là bạn sữa theo lỗi hiện ra hoặc lấy version php khác gần với nó build thử. Hơi tốn thời gian và công sức nhưng sử dụng đỗ free nên đành chửi. Chúc các bạn thành công. |