記一次.so檔案的安裝吧

niceforbear發表於2016-03-03

從Yii2的框架裡面搗鼓出了一份直接操作Redis的PHP類。在用的時候,遇到報錯:

Call to undefined function mb_strlen()

啊…看樣子又是少擴充套件。

php -m > test
php -v > test

看了一下,果然沒有mbstring擴充套件,畢竟這個不是預設擴充套件。

簡單的查了一下解決方案,大部分都說可以重新編譯php,在./configure的時候加上引數就可以了。Actually, 畢竟非科班野生的菜,這幾天又有一些重要且緊急的事情,要是某些別的地方搞掛了,忘記了,啟動不起來了,就又要加班加點的解決了。權衡了一下,決定另尋出路。

參考了一下stackoverflow的帖子,才才才知道Mac下還有Ports這樣的不明覺厲的安裝方式,遂搞起。

MacPorts官網下載頁上簡單粗暴的下載dmg檔案

然後依次

cp /opt/local/bin/port /usr/local/bin/port
port upgrade outdated
port -v selfupdate
port search mbstring
port install php56-mbstring
find / -name mbstring.so
cp /opt/local/lib/php56/extensions/no-debug-non-zts-20131226/mbstring.so /usr/local/php/lib/php/extensions/no-debug-non-zts-20131226/mbstring.so

編輯一下php.ini,開啟一下extension就沒報錯了。

參考

  1. http://stackoverflow.com/questions/4787403/missing-mbstring-php-extension-when-installing-phpmyadmin-on-mac

  2. http://www.ccvita.com/434.html

  3. http://www.macports.org/install.php

相關文章