Habari 0.7 was released on Friday, which is ace. They have improved the internalisation of the project and as a result it now requires PHP’s mbstring to be installed on the server. I didn’t have that extension installed (I try and keep to the principle of minimalism where I can) and Debain doesn’t have an Apt package for mbstring, so here is how to recompile PHP with mbstring… but this should work for any other extension you should care to add.

As far as I’m aware you can’t add new modules to an existing PHP installation (without using a package manager like APT or Yum), you have to recompile the whole thing including the original configure commands and add on the new ones.

I, of course, forget what configure options I used when I built PHP. Luckily PHP knows (An elephant never forgets. Ahem). So run this command which will tell you which commands were used when PHP was compiled and make a note of them:

    $ php -i | grep Configure

Now because I’m lazy, I usually find that I left the PHP source code directory that I downloaded on the server so I’ll find it in /usr/src or /usr/local/src. If you’re super-organised and have removed the source directory then go grab the latest PHP release and un-tar it. Either way, make sure you are in the un-tarred PHP directory and take the command that you previously made a note of and then append your changes, in my case I needed to add ‘–enable-mbstring’

    $ ./configure  --with-curl --enable-fpm --enable-mbstring

and then

    $ make && make install

Then bask in your awesomeness.